Débogage AEM as a Cloud Service avec Developer Console

AEM as a Cloud Service fournit une console de développement pour chaque environnement qui expose divers détails du service AEM en cours d’exécution qui sont utiles pour le débogage.

Chaque environnement as a Cloud Service AEM possède sa propre console de développement.

Accès à Developer Console

Pour accéder à Developer Console et l’utiliser, les autorisations suivantes doivent être accordées à Adobe ID du développeur via Admin Console de l’Adobe.

  1. Assurez-vous que l’organisation d’Adobe qui a affecté Cloud Manager et AEM produits as a Cloud Service est principale dans le sélecteur d’organisation d’Adobe.
  2. Le développeur doit être membre du Produit Cloud Manager Développeur - Cloud Service Profil de produits.
    • Si cet abonnement n’existe pas, le développeur ne pourra pas se connecter à Developer Console.
  3. Le développeur doit être membre du Utilisateurs AEM ou Administrateurs AEM Profil de produit sur l’auteur et/ou la publication AEM.
    • Si cette appartenance n’existe pas, la variable status Les vidages expirent avec une erreur 401 Non autorisé.

Dépannage de l’accès à Developer Console

401 Erreur non autorisée lors du statut de dumping

Developer Console - 401 Non autorisé

Si une erreur 401 Non autorisé est signalée lors du rejet d’un statut, cela signifie que votre utilisateur n’existe pas encore avec les autorisations nécessaires dans AEM as a Cloud Service ou que les jetons de connexion utilisés sont invalides ou ont expiré.

Pour résoudre le problème 401 Non autorisé :

  1. Assurez-vous que votre utilisateur est membre du profil produit Adobe IMS approprié (AEM administrateurs ou AEM utilisateurs) pour l’instance de produit as a Cloud Service associée de Developer Console.
    • Souvenez-vous que Developer Console accède à 2 instances de produit Adobe IMS ; Vérifiez les instances de produit Auteur et Publier as a Cloud Service, afin de vous assurer que les profils de produit corrects sont utilisés en fonction du niveau de service auquel l’accès est requis via Developer Console.
  2. Connectez-vous à l’AEM as a Cloud Service (auteur ou publication) et assurez-vous que vos utilisateurs et groupes sont correctement synchronisés dans AEM.
    • Developer Console exige que vos enregistrements d’utilisateur soient créés au niveau de service AEM correspondant pour qu’il s’authentifie à ce niveau de service.
  3. Effacez vos cookies de navigateur ainsi que l’état de l’application (stockage local) et connectez-vous à nouveau à Developer Console, en vous assurant que le jeton d’accès utilisé par Developer Console est correct et non expiré.

Capsule

Les services d’auteur et de publication as a Cloud Service AEM sont constitués de plusieurs instances respectivement afin de gérer la variabilité du trafic et les mises à jour en continu sans temps d’arrêt. Ces instances sont appelées capsules. La sélection de capsule dans Developer Console définit la portée des données qui seront exposées par le biais d’autres contrôles.

Developer Console - Capsule

  • Une capsule est une instance distincte qui fait partie d’un service AEM (auteur ou publication).
  • Les capsules sont transitoires, ce qui signifie qu’AEM as a Cloud Service les crée et les détruit selon les besoins.
  • Seules les capsules qui font partie de l’environnement as a Cloud Service associé sont répertoriées dans le sélecteur de capsule de Developer Console de l’environnement.
  • Au bas du sélecteur de capsule, les options pratiques permettent de sélectionner des capsules par type de service :
    • Tous les auteurs
    • Tous les éditeurs
    • Toutes les instances

Statut

Status (État) fournit des options permettant de générer un état d’exécution AEM spécifique dans la sortie de texte ou JSON. Developer Console fournit des informations similaires à celles de la console web OSGi du SDK AEM, avec une différence marquée que Developer Console est en lecture seule.

Developer Console - Status

Lots

Les lots répertorient tous les lots OSGi dans AEM. Cette fonctionnalité est similaire à Lots OSGi du SDK d’AEM local at /system/console/bundles.

Les lots aident au débogage en :

  • Liste de tous les lots OSGi déployés vers AEM as a Service
  • Répertorier l’état de chaque lot OSGi ; y compris s’ils sont principaux ou non
  • Ajout de détails sur les dépendances non résolues qui entraînent la principale des lots OSGi

Composants

La section Composants répertorie tous les composants OSGi d’AEM. Cette fonctionnalité est similaire à Composants OSGi du démarrage rapide local du SDK AEM at /system/console/components.

Les composants aident au débogage en :

  • Liste de tous les composants OSGi déployés sur AEM as a Cloud Service
  • indiquer l’état de chaque composant OSGi ; y compris s’ils sont principaux ou insatisfaits
  • Le fait de fournir des détails sur des références de service insatisfaites peut entraîner la principale des composants OSGi.
  • Liste des propriétés OSGi et de leurs valeurs liées au composant OSGi.

Configurations

Configurations répertorie toutes les configurations du composant OSGi (propriétés et valeurs OSGi). Cette fonctionnalité est similaire à Configuration Manager OSGi du démarrage rapide local du SDK AEM at /system/console/configMgr.

Les configurations aident au débogage en procédant comme suit :

Index Oak

Les index Oak fournissent un vidage des noeuds définis sous /oak:index. Gardez à l’esprit que cela n’affiche pas les index fusionnés qui se produisent lorsqu’un index d’AEM est modifié.

Les index Oak aident au débogage en :

  • Liste de toutes les définitions d’index Oak fournissant des informations sur la manière dont les requêtes de recherche sont exécutées dans AEM. Gardez à l’esprit que les index modifiés en index AEM ne sont pas reflétés ici. Cette vue n’est utile que pour les index qui sont uniquement fournis par AEM ou uniquement fournis par le code personnalisé.

Services OSGi

La section Composants répertorie tous les services OSGi. Cette fonctionnalité est similaire à Services OSGi du SDK AEM local at /system/console/services.

Aide des services OSGi pour le débogage :

  • Répertorier tous les services OSGi d’AEM, ainsi que le bundle OSGi fourni et tous les bundles OSGi qui les utilisent

Tâches Sling

Tâches Sling répertorie toutes les files d’attente de tâches Sling. Cette fonctionnalité est similaire à Tâches du démarrage rapide local du SDK AEM at /system/console/slingevent.

Aide sur les tâches Sling dans le débogage en :

  • Liste des files d’attente de tâches Sling et de leurs configurations
  • Fournissant des informations sur le nombre de tâches Sling principales, en file d’attente et traitées, ce qui s’avère utile pour le débogage des problèmes liés aux workflows, aux workflows transitoires et aux autres tâches effectuées par les tâches Sling dans AEM.

Modules Java

Les packages Java permettent de vérifier si un package Java, ainsi qu’une version, sont disponibles dans AEM as a Cloud Service. Cette fonctionnalité est identique à Outil de recherche de dépendance du démarrage rapide local du SDK AEM at /system/console/depfinder.

Developer Console - Packages Java

Les packages Java sont utilisés pour empêcher le démarrage des lots en raison d’importations non résolues ou de classes non résolues dans les scripts (HTL, JSP, etc.). Si les packages Java signalent qu’aucun lot n’exporte un package Java (ou que la version ne correspond pas à celle importée par un lot OSGi) :

  • Assurez-vous que la version de la dépendance Maven de l’API AEM de votre projet correspond à la version AEM de publication de l’environnement (et, si possible, mettez tout à jour vers la dernière version).
  • Si des dépendances Maven supplémentaires sont utilisées dans le projet Maven
    • Déterminez si une autre API fournie par la dépendance d’API du SDK AEM peut être utilisée à la place.
    • Si la dépendance supplémentaire est requise, assurez-vous qu’elle est fournie sous la forme d’un lot OSGi (plutôt que d’un fichier Jar simple) et qu’elle est incorporée dans le module de code de votre projet (ui.apps), similaire à la manière dont le lot OSGi principal est incorporé dans la variable ui.apps module.

Servlets

Servlets permet de savoir comment AEM résout une URL en un servlet ou un script Java (HTL, JSP) qui gère finalement la requête. Cette fonctionnalité est identique à Résolveur de servlet Sling du démarrage rapide local du SDK AEM at /system/console/servletresolver.

Developer Console - Servlets

Les servlets permettent de déterminer :

  • Comment une URL est décomposée en parties adressables (ressource, sélecteur, extension).
  • Servlet ou script auquel une URL correspond, ce qui permet d’identifier les URL mal formées ou les servlets/scripts mal enregistrés.

Requêtes

Les requêtes permettent d’obtenir des informations sur les requêtes de recherche exécutées sur AEM. Cette fonctionnalité est identique à Outils de démarrage rapide local du SDK AEM > Performances des requêtes console.

Les requêtes ne fonctionnent que lorsqu’une capsule spécifique est sélectionnée, car elle ouvre la console web Performances des requêtes de cette capsule, ce qui nécessite que le développeur ait accès au service AEM.

Developer Console - Requêtes - Expliquer la requête

Les requêtes permettent de déboguer en :

  • Expliquer comment les requêtes sont interprétées, analysées et exécutées par Oak. Ceci est très important lors du suivi des raisons pour lesquelles une requête est lente et de la compréhension de la manière dont elle peut être accélérée.
  • Liste des requêtes les plus populaires s’exécutant dans AEM, avec la possibilité de les expliquer.
  • Liste des requêtes les plus lentes s’exécutant dans AEM, avec la possibilité de les expliquer.

Sur cette page