Résolution des problèmes d’extensibilité des Assets compute
Vous trouverez ci-dessous un index des problèmes et erreurs courants, ainsi que les résolutions, qui peuvent se produire lors du développement et du déploiement de programmes de travail Asset compute personnalisés pour AEM Assets.
Développer
Le rendu est renvoyé partiellement tracé/corrompu
Erreur : Le rendu est rendu incomplètement (lorsqu’une image) ou est corrompu et ne peut pas être ouvert.
Cause : La renditionCallback fonction du programme de travail quitte avant que le rendu ne puisse être entièrement modifié rendition.path.
Résolution : Vérifiez le code de traitement personnalisé et assurez-vous que tous les appels asynchrones sont effectués de manière synchrone à l’aide de await.
Outil de développement
Fichier Console.json manquant dans le projet Asset compute
Erreur : Erreur : Fichiers requis manquants lors de la validation (…/node_modules/@adobe/asset-compute-client/lib/integrationConfiguration.:XX:jsYY) à l’adresse async setupAssetCompute (…/node_modules/@adobe/asset-compute-devtool/src/assetComputeDevTool.:XX:jsYY)
Cause : le console.json fichier est absent de la racine du projet Asset compute.
Résolution : téléchargez un nouveau console.json formulaire à partir de votre projet Adobe I/O.
Dans console.adobe.io, ouvrez le projet Adobe I/O que le projet Asset compute est configuré pour utiliser
Appuyez sur le bouton Télécharger en haut à droite.
Enregistrez le fichier téléchargé à la racine de votre projet Asset compute à l’aide du nom de fichier console.json
Retrait YAML incorrect dans manifest.yml
Erreur : YAMLException : mauvaise mise en retrait d’une entrée de mappage à la ligne X, colonne Y : (via standard out from aio app run command)
Cause : les fichiers Yaml sont sensibles aux espaces blancs. Il est probable que votre mise en retrait soit incorrecte.
Résolution : vérifiez votre manifest.yml et assurez-vous que toutes les retraits sont corrects.
La limite memorySize est définie trop basse
Erreur : OpenWhiskError du serveur de développement local : PUT https://adobeioruntime.net/api/v1/namespaces/xxx-xxx-xxx/actions/xxx-0.0.1/__secured_workeroverwrite=true Renvoyé HTTP 400 (Bad Request) —> "Le contenu de la requête a été incorrect : l’exigence a échoué : mémoire 64 Mo en dessous du seuil autorisé de 134217728 B"
Cause : une memorySize limite pour le programme de travail dans manifest.yml a été définie sous le seuil minimal autorisé comme indiqué par le message d’erreur en octets.
Résolution : vérifiez les memorySize limites dans manifest.yml et assurez-vous qu’elles sont toutes supérieures au seuil minimal autorisé.
L’outil de développement ne peut pas démarrer en raison d’une valeur private.key manquante.
Erreur : Local Dev ServerError : Fichiers requis manquants à validatePrivateKeyFile… (via standard, à partir de la commande aio app run)
Cause : la ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH valeur du .env fichier ne pointe pas vers private.key ou private.key n’est pas lisible par l’utilisateur actuel.
Résolution : vérifiez la ASSET_COMPUTE_PRIVATE_KEY_FILE_PATH valeur du .env fichier et assurez-vous qu’il contient le chemin d’accès absolu et complet à private.key sur votre système de fichiers.
Fichier source : liste déroulante incorrect
L’outil de développement d’Asset compute peut entrer un état dans lequel il extrait les données obsolètes et est le plus visible dans la liste déroulante Fichier source affichant des éléments incorrects.
Erreur : la liste déroulante Fichier source affiche des éléments incorrects.
Cause : l’état du navigateur mis en cache est obsolète.
Résolution : dans votre navigateur, effacez complètement l’"état d’application" de l’onglet du navigateur, le cache du navigateur, le stockage local et le service worker.
Paramètre de requête devToolToken absent ou non valide
Erreur : notification "non autorisée" dans l’outil de développement Asset compute
Cause :devToolToken est absent ou non valide
Résolution : fermez la fenêtre du navigateur de l’outil de développement Asset compute, arrêtez les processus de l’outil de développement en cours d’exécution lancés via la aio app run commande et redémarrez l’outil de développement (à l’aide de aio app run).
Impossible de supprimer les fichiers source
Erreur : il n’existe aucun moyen de supprimer les fichiers source ajoutés de l’interface utilisateur des outils de développement.
Cause : cette fonctionnalité n’a pas été implémentée.
Résolution : connectez-vous à votre fournisseur de stockage dans le cloud à l’aide des informations d’identification définies dans .env. Recherchez le conteneur utilisé par les outils de développement (également spécifié dans .env), accédez au dossier source et supprimez les images sources. Vous devrez peut-être effectuer les étapes décrites dans la liste déroulante Fichiers source incorrecte si les fichiers source supprimés continuent à s’afficher dans la liste déroulante, car ils peuvent être mis en cache localement dans l’"état de l’application" des outils de développement.
Test
Aucun rendu généré lors de l’exécution du test
Erreur : Échec : Aucun rendu n’a été généré.
Cause : le programme de travail n’a pas pu générer de rendu en raison d’une erreur inattendue, telle qu’une erreur de syntaxe JavaScript.
Résolution : passez en revue l’exécution du test test.log à l’adresse /build/test-results/test-worker/test.log. Recherchez la section dans ce fichier correspondant au cas de test d’échec et recherchez les erreurs.
Le test génère un rendu incorrect provoquant l’échec du test.
Erreur : Échec : Rendu 'rendition.xxx' pas comme prévu.
Cause : le programme de travail génère un rendu différent de celui rendition.<extension> fourni dans le cas de test.
Si le fichier rendition.<extension> attendu n’est pas créé exactement de la même manière que le rendu généré localement dans le cas de test, le test peut échouer, car il peut y avoir une différence dans les bits. Par exemple, si le programme de travail des Assets compute modifie le contraste à l’aide des API et que le résultat attendu est créé en ajustant le contraste dans Adobe Photoshop CC, les fichiers peuvent apparaître de la même manière, mais des variations mineures dans les bits peuvent être différentes.
Résolution : vérifiez la sortie du rendu du test en accédant à /build/test-worker/<worker-name>/<test-run-timestamp>/<test-case>/rendition.<extension> et comparez-la au fichier de rendu attendu dans le cas de test. Pour créer une ressource exacte, procédez de l’une des manières suivantes :
Utilisez l’outil de développement pour générer un rendu, vérifier qu’il est correct et l’utiliser comme fichier de rendu attendu.
Ou, validez le fichier généré par le test à l’adresse /build/test-worker/<worker-name>/<test-run-timestamp>/<test-case>/rendition.<extension>, validez-le comme correct et utilisez-le comme fichier de rendu attendu.
Déboguer
Debugger ne se joint pas
Erreur : Lancement du traitement des erreurs : Erreur : Impossible de se connecter à la cible de débogage à l’adresse …
Cause : Docker Desktop n’est pas en cours d’exécution sur le système local. Vérifiez ce message en consultant la console de débogage du code VS (Affichage > Console de débogage), puis en confirmant que cette erreur est signalée.
Erreur : Lors de l’exécution du programme de travail Asset compute à partir de l’outil de développement débogage, le code VS ne se met pas en pause aux points d’arrêt.
Débogueur de code VS non joint
Cause : le débogueur VS Code a été arrêté/déconnecté.
Résolution : Redémarrez le débogueur VS Code et vérifiez qu’il se joint en regardant la console de sortie de débogage VS Code (Affichage > Console de débogage).
Débogueur VS Code attaché après le début de l’exécution du programme de travail
Cause : le débogueur VS Code ne s’est pas joint avant d’appuyer sur ____ Runin Development Tool.
Résolution : Assurez-vous que le débogueur a joint en examinant la console de débogage de VS Code (Affichage > Console de débogage), puis relancez le programme de travail d’Asset compute à partir de l’outil de développement.
Le traitement expire lors du débogage
Erreur : La console de débogage signale que "l’action expire dans -XXX millisecondes" ou que l’aperçu du rendu de l’outil de développement d’ Asset compute s’étend indéfiniment ou
Cause : Le délai d’expiration du programme de travail tel que défini dans le manifeste. ymlis a été dépassé pendant le débogage.
Résolution : Augmentez temporairement le délai d’attente du programme de travail dans le manifeste. ymlor accélère les activités de débogage.
Impossible d’arrêter le processus de débogage
Erreur : Ctrl-C sur la ligne de commande n’arrête pas le processus de débogage (npx adobe-asset-compute devtool).
Cause : En cas de bogue dans @adobe/aio-cli-plugin-asset-compute la version 1.3.x, Ctrl-C aucune commande d’arrêt n’est reconnue.
Résolution : Mise @adobe/aio-cli-plugin-asset-compute à jour vers la version 1.4.1+
$ aio update
Déploiement
Rendu personnalisé manquant dans la ressource dans AEM
Erreur : les ressources nouvelles et retraitées sont traitées avec succès, mais le rendu personnalisé est manquant.
Profil de traitement non appliqué au dossier ancêtre
Cause : la ressource n’existe pas sous un dossier avec le profil de traitement qui utilise le programme de travail personnalisé.
Résolution : Appliquez le profil de traitement à un dossier ancêtre de la ressource.
Profil de traitement remplacé par profil de traitement inférieur
Cause : la ressource existe sous un dossier auquel est appliqué le profil de traitement personnalisé du programme de travail, mais un autre profil de traitement qui n’utilise pas le programme de travail du client a été appliqué entre ce dossier et la ressource.
Résolution : Combinez ou réconciliez les deux profils de traitement et supprimez le profil de traitement intermédiaire.
Échec du traitement des ressources dans AEM
Erreur : Badge Échec du traitement des ressources affiché sur la ressource
Cause : une erreur s’est produite lors de l’exécution du programme de travail personnalisé
Résolution : Suivez les instructions de débogage de l’ activation de Adobe I/O Runtime à l’aide de aio app logs.