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 personalizados do Asset Compute 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.

    A representação foi retornada parcialmente desenhada

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

  • Soluçã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 no projeto do Asset Compute missing-console-json

  • __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 :__O arquivo console.json está ausente da raiz do projeto Asset Compute

  • __Solução :__Baixe um novo console.json de seu projeto Adobe I/O

    1. Em console.adobe.io, abra o projeto do Adobe I/O para o qual o projeto do Asset Compute está configurado para usar
    2. Toque no botão Baixar na parte superior direita
    3. Salve o arquivo baixado na raiz do seu projeto do Asset Compute usando o nome de arquivo console.json

Recuo YAML incorreto em manifest.yml incorrect-yaml-indentation

  • __Error recuo incorreto de uma entrada de mapeamento na linha X, coluna Y:(via padrão fora do comando aio app run)
  • __Causa :__Os arquivos Yaml são sensíveis a espaços em branco; é provável que seu recuo esteja incorreto.
  • __Resolution :__Revise 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:requirement falhou: memória 64 MB abaixo do limite permitido de 134217728 B”
  • __Causa :__Um limite de memorySize para o trabalhador em manifest.yml foi definido abaixo do limite mínimo permitido, conforme relatado pela mensagem de erro em bytes.
  • __Resolution :__Revise os limites de memorySize em manifest.yml e verifique se todos eles são maiores que o limite mínimo permitido.

A Ferramenta de desenvolvimento não pode ser iniciada devido à falta de private.key missing-private-key

  • __Erro :__Local Dev ServerError: Arquivos necessários ausentes em validatePrivateKeyFile… (via padrão fora do comando aio app run)
  • __Causa :__O valor ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH no arquivo .env, não aponta para private.key ou private.key não é legível pelo usuário atual.
  • __Resolution :__Revise o valor ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH no arquivo .env, e certifique-se de que ele contenha o caminho completo e absoluto para o private.key em seu sistema de arquivos.

Lista suspensa de arquivos do Source incorreta source-files-dropdown-incorrect

A Ferramenta de Desenvolvimento do Asset Compute pode entrar em um estado em que extrai dados obsoletos, e é mais visível na lista suspensa Arquivo Source exibindo itens incorretos.

  • __Erro :__a lista suspensa de arquivos Source exibe itens incorretos.
  • __Causa :__O estado obsoleto do navegador em cache causa
  • __Solução :__Em seu 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 da Asset Compute
  • Cause :devToolToken está ausente ou é inválido
  • __Solução :__Feche a janela do navegador da Ferramenta de Desenvolvimento da Asset Compute, encerre todos os processos da Ferramenta de Desenvolvimento iniciados pelo comando aio app run e reinicie a Ferramenta de Desenvolvimento (usando aio 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 de Ferramentas de Desenvolvimento

  • __Causa :__Esta funcionalidade não foi implementada

  • __Solução :Faça logon em seu provedor de armazenamento na 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 origem __e exclua todas as imagens de origem. Talvez seja necessário executar as etapas descritas na lista suspensa de arquivos do Source incorreta se os arquivos de origem excluídos continuarem a ser exibidos na lista suspensa, pois eles podem ser armazenados em cache localmente no “estado do aplicativo” das Ferramentas de Desenvolvimento.

    Microsoft Azure Blob Storage

Teste test

Nenhuma representação gerada durante a execução do teste test-no-rendition-generated

  • __Erro Nenhuma representação gerada.

  • __Cause :__O trabalhador falhou ao gerar uma representação devido a um erro inesperado, como um erro de sintaxe do JavaScript.

  • __Resolution :__Revise o test.log da execução de teste 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.

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

O teste gera representação incorreta, causando falha no teste tests-generates-incorrect-rendition

  • __Erro a representação ‘rendition.xxx’ não foi a esperada.

  • __Causa :__O trabalhador gerou uma representação que não era a mesma que a 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 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 ter a mesma aparência, mas pequenas variações nos bits poderão ser diferentes.
  • __Resolution :__Revise a saída da representação do teste navegando para /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:

    • 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 ele 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.
  • Solução: inicie o 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 trabalho do Asset Compute a partir da Ferramenta de Desenvolvimento que pode ser depurada, 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 VS foi interrompido/desconectado.
  • __Solução :__Reinicie o depurador de código VS e verifique se ele se anexa observando o console Saída de depuração do código 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

  • Cause: O depurador de código do VS não foi anexado antes de tocar em Run na 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 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 a pré-visualização da representação 🔗 da Ferramenta de Desenvolvimento do Asset Compute gira indefinidamente ou
  • Causa: o tempo limite do trabalhador conforme definido em manifest.yml foi excedido durante a depuração.
  • Soluçã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 em @adobe/aio-cli-plugin-asset-compute 1.3.x, resulta no Ctrl-C não ser reconhecido como um comando de terminação.

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

    code language-none
    $ aio update
    

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

Implantar deploy

Representação personalizada ausente do ativo no AEM custom-rendition-missing-from-asset

  • __Erro :__Ativos novos e reprocessados são processados com êxito, mas falta a representação personalizada

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
  • __Resolution :__Aplique o perfil de processamento a uma pasta antecessora 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.
  • __Resolution :__Combina, ou reconcilia de outra forma, os dois perfis de processamento e remove o perfil de processamento intermediário

O processamento de ativos falha no AEM asset-processing-fails

  • __Erro :__Selo de falha de processamento de ativo exibido no ativo
  • __Causa :__Erro na execução do trabalho personalizado
  • __Resolution :__Siga as instruções em depurando ativações do Adobe I/O Runtime usando aio app logs.
recommendation-more-help
experience-manager-learn-help-cloud-service