Solução de problemas de extensibilidade do Asset compute
A seguir há um índice de problemas e erros comuns, juntamente com as resoluções, que podem ser encontrados ao desenvolver e implantar trabalhadores de Asset compute personalizados para o AEM Assets.
Desenvolver develop
A representação é retornada parcialmente desenhada/corrompida rendition-returned-partially-drawn-or-corrupt
-
Erro: a representação é renderizada de forma incompleta (quando uma imagem) ou está corrompida e não pode ser aberta.
-
Causa: O do trabalhador
renditionCallback
for encerrada antes que a representação possa ser completamente gravadarendition.path
. -
Resolução: revise o código de trabalho personalizado e verifique se todas as chamadas assíncronas foram tornadas síncronas usando
await
.
Ferramenta de desenvolvimento development-tool
Arquivo Console.json ausente do projeto do Asset compute missing-console-json
-
Erro: Erro: arquivos necessários ausentes na validação (
.../node_modules/@adobe/asset-compute-client/lib/integrationConfiguration.js:XX:YY
) em setupAssetCompute assíncrono (.../node_modules/@adobe/asset-compute-devtool/src/assetComputeDevTool.js:XX:YY
) -
Causa: A variável
console.json
arquivo está ausente na raiz do projeto do Asset compute -
Resolução: Baixar um novo
console.json
do seu projeto Adobe I/O- Em console.adobe.io, abra o projeto Adobe I/O que o projeto Asset compute está configurado para usar
- Toque no Baixar botão na parte superior direita
- Salve o arquivo baixado na raiz do projeto do Asset compute usando o nome de arquivo
console.json
Recuo YAML incorreto em manifest.yml incorrect-yaml-indentation
- Erro: YAMLException: recuo incorreto de uma entrada de mapeamento na linha X, coluna Y:(via padrão fora de
aio app run
command) - Causa: Os arquivos Yaml são sensíveis a espaços em branco, provavelmente seu recuo está incorreto.
- Resolução: Analise seu
manifest.yml
e certifique-se de que todo o recuo esteja correto.
O limite memorySize está definido como muito baixo memorysize-limit-is-set-too-low
- Erro: OpenWhiskError do Servidor de Desenvolvimento Local: PUT https://adobeioruntime.net/api/v1/namespaces/xxx-xxx-xxx/actions/xxx-0.0.1/__secured_workeroverwrite=true Retornou HTTP 400 (Solicitação Incorreta) —> "O conteúdo da solicitação estava malformado:requisito falhou: memória 64 MB abaixo do limite permitido de 134217728 B"
- Causa: A
memorySize
limite para o trabalhador namanifest.yml
foi definido abaixo do limite mínimo permitido, conforme relatado pela mensagem de erro em bytes. - Resolução: Revise o
memorySize
limites nomanifest.yml
e garantir que todos sejam maiores do que o limite mínimo permitido.
A Ferramenta de desenvolvimento não pode ser iniciada devido à falta de private.key missing-private-key
- Erro: Erro do servidor de desenvolvimento local: arquivos necessários ausentes em validatePrivateKeyFile… (por padrão, fora de
aio app run
command) - Causa: A variável
ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH
valor em.env
arquivo, não aponta paraprivate.key
ouprivate.key
não é legível pelo usuário atual. - Resolução: Revise o
ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH
valor em.env
e certifique-se de que ele contenha o caminho completo e absoluto para oprivate.key
em seu sistema de arquivos.
Lista suspensa de arquivos de origem incorreta source-files-dropdown-incorrect
A Ferramenta de desenvolvimento de assets compute pode entrar em um estado em que extrai dados obsoletos e é mais visível na Arquivo de origem lista suspensa exibindo itens incorretos.
- Erro: A lista suspensa de arquivos de origem exibe itens incorretos.
- Causa: O estado obsoleto do navegador em cache causa
- Resolução: No navegador, limpe completamente o "estado do aplicativo" da guia do navegador, o cache do navegador, o armazenamento local e o service worker.
Parâmetro de consulta devToolToken ausente ou inválido missing-or-invalid-devtooltoken-query-parameter
- Erro: Notificação "Não autorizado" na Ferramenta de desenvolvimento do Asset compute
- Causa:
devToolToken
está ausente ou é inválido - Resolução: Feche a janela do navegador da Ferramenta de desenvolvimento do Asset compute e encerre todos os processos da Ferramenta de desenvolvimento iniciados por meio da
aio app run
e reinicie a Ferramenta de desenvolvimento (usandoaio app run
).
Não foi possível remover os arquivos de origem unable-to-remove-source-files
-
Erro: Não há como remover arquivos de origem adicionados da interface das Ferramentas de desenvolvimento
-
Causa: Esta funcionalidade não foi implementada
-
Resolução: Faça logon no provedor de armazenamento na nuvem usando as credenciais definidas no
.env
. Localize o contêiner usado pelas Ferramentas de desenvolvimento (também especificado em.env
), navegue até o origem e exclua todas as imagens de origem. Talvez seja necessário executar as etapas descritas em Lista suspensa de arquivos de origem incorreta se os arquivos de origem excluídos continuarem a ser exibidos na lista suspensa, pois podem ser armazenados em cache localmente no "estado do aplicativo" das Ferramentas de desenvolvimento.
Testar test
Nenhuma representação gerada durante a execução do teste test-no-rendition-generated
-
Erro: Falha: nenhuma representação gerada.
-
Causa: O trabalhador falhou ao gerar uma representação devido a um erro inesperado, como um erro de sintaxe JavaScript.
-
Resolução: Revisar o da execução de teste
test.log
em/build/test-results/test-worker/test.log
. Localize a seção nesse arquivo correspondente ao caso de teste com falha e verifique se há erros.
O teste gera representação incorreta, causando falha no teste tests-generates-incorrect-rendition
-
Erro: Falha: a representação "rendition.xxx" não foi executada conforme esperado.
-
Causa: O trabalhador gerou uma representação que não era a mesma que a
rendition.<extension>
fornecido no caso de teste.- Se o esperado
rendition.<extension>
o arquivo não é criado exatamente da mesma maneira que a representação gerada localmente no caso de teste, o teste pode falhar, pois pode haver alguma diferença nos bits. Por exemplo, se o trabalhador do Asset compute alterar o contraste usando APIs e o resultado esperado for criado ajustando o contraste no Adobe Photoshop CC, os arquivos poderão parecer iguais, mas variações secundárias nos bits poderão ser diferentes.
- Se o esperado
-
Resolução: Revise a saída da representação do teste navegando até
/build/test-worker/<worker-name>/<test-run-timestamp>/<test-case>/rendition.<extension>
e compare-o ao arquivo de representação esperado no caso de teste. Para criar um ativo esperado exato:- Use a Ferramenta de desenvolvimento para gerar uma representação, validar se ela está correta e usá-la como o arquivo de representação esperado
- Ou valide o arquivo gerado pelo teste em
/build/test-worker/<worker-name>/<test-run-timestamp>/<test-case>/rendition.<extension>
, confirme se está correto e use-o como o arquivo de representação esperado
Depurar
O depurador não anexa debugger-does-not-attach
- Erro: Erro ao processar lançamento: Erro: Não foi possível conectar ao destino de depuração em…
- Causa: o Docker Desktop não está sendo executado no sistema local. Verifique isso revisando o Console de depuração do código VS (Exibir > Console de depuração), confirmando que esse erro foi relatado.
- Resolução: Início Docker Desktop e confirme se as imagens do Docker necessárias estão instaladas.
Os pontos de interrupção não estão pausando breakpoints-no-pausing
- Erro: ao executar o Asset compute worker a partir da Ferramenta de desenvolvimento depurável, o Código VS não pausa nos pontos de interrupção.
Depurador de código VS não anexado vs-code-debugger-not-attached
- Causa: O depurador de código do VS foi interrompido/desconectado.
- Resolução: Reinicie o depurador de código do VS e verifique se ele se anexa observando o console Saída de depuração do código do VS (Exibir > Console de depuração)
Depurador de código VS anexado após o início da execução do trabalho vs-code-debugger-attached-after-worker-execution-began
- Causa: O depurador de código do VS não foi anexado antes de tocar Executar em Ferramenta de desenvolvimento.
- Resolução: Verifique se o depurador foi anexado revisando o Console de depuração do código VS (Exibir > Console de depuração) e, em seguida, execute novamente o trabalhador do Asset compute na Ferramenta de desenvolvimento.
O trabalhador atinge o tempo limite durante a depuração worker-times-out-while-debugging
- Erro: o Console de depuração relata "O tempo limite da ação será de -XXX milissegundos" ou Ferramentas de desenvolvimento do Asset compute a visualização de representação gira indefinidamente ou
- Causa: O tempo limite do worker conforme definido na variável manifest.yml é excedido durante a depuração.
- Resolução: aumente temporariamente o tempo limite do trabalhador no manifest.yml ou acelere as atividades de depuração.
Não é possível encerrar o processo do depurador cannot-terminate-debugger-process
-
Erro:
Ctrl-C
na linha de comando não encerra o processo do depurador (npx adobe-asset-compute devtool
). -
Causa: um erro no
@adobe/aio-cli-plugin-asset-compute
1.3.x, resulta emCtrl-C
não é reconhecido como um comando de terminação. -
Resolução: Atualizar
@adobe/aio-cli-plugin-asset-compute
para a versão 1.4.1+code language-none $ aio update
Implantar deploy
Representação personalizada ausente do ativo no AEM custom-rendition-missing-from-asset
- Erro: Os ativos novos e reprocessados são processados com sucesso, mas a representação personalizada está ausente
Perfil de processamento não aplicado à pasta antecessora
- Causa: O ativo não existe em uma pasta com o Perfil de processamento que usa o trabalhador personalizado
- Resolução: Aplicar o perfil de processamento a uma pasta ancestral do ativo
Perfil de processamento substituído por perfil de processamento inferior
- Causa: O ativo existe abaixo de uma pasta com o Perfil de processamento do trabalhador personalizado aplicado, no entanto, um Perfil de processamento diferente que não usa o trabalhador do cliente foi aplicado entre essa pasta e o ativo.
- Resolução: Combine ou reconcilie os dois perfis de processamento e remova o perfil de processamento intermediário
O processamento de ativos falha no AEM asset-processing-fails
- Erro: Selo Falha de processamento de ativo exibido no ativo
- Causa: Ocorreu um erro na execução do trabalho personalizado
- Resolução: Siga as instruções em depurar ativações do Adobe I/O Runtime usar
aio app logs
.