Solução de problemas de extensibilidade do Asset compute

Veja a seguir um índice de problemas e erros comuns, juntamente com as resoluções, que podem ser encontrados ao desenvolver e implantar trabalhadores personalizados do Asset compute para o AEM Assets.

Desenvolver

A representação é retornada parcialmente desenhada/corrompida

  • Erro: A representação é renderizada incompletamente (quando uma imagem) ou está corrompida e não pode ser aberta.

    A representação é retornada parcialmente desenhada

  • Causa: A renditionCallback função do trabalhador está sendo encerrada antes que a representação possa ser completamente gravada no rendition.path.

  • Resolução: Revise o código de trabalho personalizado e verifique se todas as chamadas assíncronas são sincronizadas usando o await.

Ferramenta de desenvolvimento

Arquivo Console.json ausente do projeto do Asset compute

  • Erro: Erro: Arquivos necessários ausentes na validação (…/node_modules/@adobe/asset-compute-client/lib/integrationConfiguration.:XX:jsYY) em async setupAssetCompute (…/node_modules/@adobe/asset-compute-devtool/src/assetComputeDevTool.:XX:jsYY)
  • Causa: O console.json arquivo está ausente na raiz do projeto do Asset compute
  • Solução: Baixe um novo console.json formulário do projeto Adobe I/O
    1. No console.adobe.io, abra o projeto do Adobe I/O que o projeto do Asset compute está configurado para usar
    2. Toque no botão Download no canto superior direito
    3. Salve o arquivo baixado na raiz do projeto do Asset compute usando o nome do arquivo console.json

Recuo YAML incorreto em manifest.yml

  • Erro: YAMLException: indentação incorreta de uma entrada de mapeamento na linha X, coluna Y:(via padrão out from aio app run command)
  • Causa: Os arquivos Yaml são sensíveis ao espaço em branco, é provável que o recuo esteja incorreto.
  • Solução: analise manifest.yml e verifique se todo o recuo está correto.

o limite memorySize está definido como muito baixo

  • 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 HTTP 400 retornado (Solicitação inválida) —> "O conteúdo da solicitação foi malformado:requisito falhou: memória 64 MB abaixo do limite permitido de 134217728 B"
  • Causa: Um memorySize limite para o trabalhador no manifest.yml foi definido abaixo do limite mínimo permitido, conforme relatado pela mensagem de erro em bytes.
  • Solução: analise os memorySize limites na manifest.yml e verifique se eles são todos maiores que o limite mínimo permitido.

A Ferramenta de Desenvolvimento não pode ser iniciada devido à falta de private.key

  • Erro: Local Dev ServerError: Arquivos necessários ausentes em validatePrivateKeyFile… (por padrão fora do comando aio app run)
  • Causa: O ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH valor no .env arquivo não aponta para private.key ou não private.key é legível pelo usuário atual.
  • Solução: analise o ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH valor no .env arquivo e verifique se ele contém o caminho completo e absoluto para o private.key no seu sistema de arquivos.

Lista suspensa de arquivos de origem incorreta

A Ferramenta de desenvolvimento de asset compute pode inserir um estado onde extrai dados obsoletos e é mais notável na lista suspensa Source file exibindo itens incorretos.

  • Erro: a lista suspensa do arquivo de origem exibe itens incorretos.
  • Causa: o estado obsoleto do navegador em cache causa o
  • Solução: em seu navegador, limpe completamente o "estado do aplicativo" da guia do navegador, o cache do navegador, o armazenamento local e o trabalhador do serviço.

Parâmetro de consulta devToolToken ausente ou inválido

  • Erro: notificação "Não autorizado" na Ferramenta de Desenvolvimento de Assets compute
  • Causa: devToolToken está ausente ou é inválido
  • Solução: feche a janela do navegador da Ferramenta de desenvolvimento de Assets compute, encerre todos os processos da Ferramenta de desenvolvimento em execução iniciados por meio do aio app run comando e reinicie a Ferramenta de desenvolvimento (usando aio app run).

Não é possível remover arquivos de origem

  • Erro: Não há como remover arquivos de origem adicionados da interface do usuário das Ferramentas de Desenvolvimento

  • Causa: esta funcionalidade não foi implementada

  • Solução: faça logon no provedor de armazenamento em nuvem usando as credenciais definidas em .env. Localize o contêiner usado pelas Ferramentas de desenvolvimento (também especificado em .env), navegue até a pasta source e exclua quaisquer imagens de origem. Talvez seja necessário executar as etapas descritas na lista suspensa Arquivos de origem incorretos se os arquivos de origem excluídos continuarem sendo exibidos na lista suspensa, pois podem ser armazenados em cache localmente no "estado do aplicativo" das Ferramentas de Desenvolvimento.

    Armazenamento de blobs do Microsoft Azure

Testar

Nenhuma representação gerada durante a execução do teste

  • Erro: Falha: Nenhuma representação gerada.

  • Causa: o trabalhador não conseguiu gerar uma representação devido a um erro inesperado, como um erro de sintaxe JavaScript.

  • Solução: revise a execução do teste test.log em /build/test-results/test-worker/test.log. Localize a seção neste arquivo correspondente ao caso de teste com falha e verifique se há erros.

    Solução de problemas - Nenhuma renderização gerada

O teste gera representação incorreta, causando falha no teste

  • Erro: Falha: A representação 'rendition.xxx' não é como esperado.
  • Causa: o trabalhador gera uma representação que não é a mesma rendition.<extension> fornecida no caso de teste.
    • Se o arquivo esperado rendition.<extension> não for criado exatamente da mesma maneira que a representação gerada localmente no caso de teste, o teste poderá falhar, pois poderá 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 os mesmos, mas pequenas variações nos bits poderão ser diferentes.
  • Solução: analise a saída da representação do teste navegando até /build/test-worker/<worker-name>/<test-run-timestamp>/<test-case>/rendition.<extension>e compare-a com o arquivo de representação esperado no caso de teste. Para criar um ativo esperado exato, faça o seguinte:
    • Use a ferramenta de desenvolvimento para gerar uma representação, validá-la 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>, valide-o e use-o como o arquivo de representação esperado

Depurar

O Debugger não é anexado

  • Erro: Erro ao processar inicialização: Erro: Não foi possível conectar-se 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 é relatado.
  • Resolução: Inicie o Docker Desktop e confirme se as imagens Docker necessárias estão instaladas.

Pontos de interrupção não pausados

  • Erro: Ao executar o trabalho do Asset compute a partir da Ferramenta de desenvolvimento que pode ser depurada, o Código VS não é pausado nos pontos de interrupção.

Depurador de código VS não anexado

  • Causa: o depurador do Código VS foi interrompido/desconectado.
  • Solução: Reinicie o depurador de Código VS e verifique se ele é anexado assistindo ao console Saída de Depuração de Código VS (Exibir > Console de Depuração)

Depurador de código VS anexado após o início da execução do trabalhador

  • Causa: o depurador de Código VS não foi anexado antes de tocar em ____ Executar Ferramenta de Desenvolvimento.
  • Soluçã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 tempo limite do trabalho é excedido durante a depuração

  • Erro: O Console de Depuração relata "A ação expirará em -XXX milissegundos" ou a visualização da representação da Ferramenta de Desenvolvimento de Assets compute gira indefinidamente ou
  • Causa: O tempo limite do trabalhador, conforme definido no manifest. ymlis, foi excedido durante a depuração.
  • Resolução: Aumente temporariamente o tempo limite do trabalhador no manifest. ymlor para acelerar as atividades de depuração.

Não é possível encerrar o processo do depurador

  • Erro: Ctrl-C na linha de comando não encerra o processo do depurador (npx adobe-asset-compute devtool).

  • Causa: Um bug na @adobe/aio-cli-plugin-asset-compute 1.3.x Ctrl-C não é reconhecido como um comando de finalização.

  • Resolução: Atualizar @adobe/aio-cli-plugin-asset-compute para a versão 1.4.1+

    $ aio update
    

    Solução de problemas - atualização do aio

Implantar

Representação personalizada ausente do ativo no AEM

  • Erro: processo de ativos novos e reprocessados com êxito, mas a representação personalizada está ausente

Perfil de processamento não aplicado à pasta ancestral

  • Causa: O ativo não existe em uma pasta com o Perfil de processamento que usa o trabalhador personalizado
  • Solução: aplique o perfil de processamento a uma pasta ancestral do ativo

Perfil de processamento substituído por Perfil de processamento mais baixo

  • Causa: O ativo existe abaixo de uma pasta com o Perfil de processamento de trabalho 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.
  • Solução: combine ou reconcilie de outra forma os dois perfis de processamento e remova o perfil de processamento intermediário

O processamento de ativos falha no AEM

  • Erro: Selo de falha de processamento de ativos exibido no ativo
  • Causa: Ocorreu um erro na execução do trabalhador personalizado
  • Solução: siga as instruções em depurar a ativação do Adobe I/O Runtime usando o aio app logs.

Nesta página