Configuration d’OpenTelemetry pour obtenir des informations sur les applications AEM
Découvrez comment connecter un environnement AEM as a Cloud Service à la plateforme d’observabilité compatible OpenTelemetry de votre choix.
Dans articles précédents vous avez découvert les concepts et les avantages de l’utilisation d’OpenTelemetry avec AEM as a Cloud Service. Dans ce tutoriel, nous utilisons l’exemple de projet AEM WKND comme exemple d’application et nous montrons comment exporter des données télémétriques en déployant des config/otel.yaml à l’aide d’un pipeline de configuration Cloud Manager.
Les grandes étapes sont les suivantes :
- Obtenez le point d’entrée OTLP/HTTPS et les informations d’ingestion pour votre plateforme d’observabilité.
- Stockez les informations d’identification en toute sécurité dans Cloud Manager.
- Ajoutez le fichier
config/otel.yamlau référentiel de votre projet AEM. - Exécutez le Pipeline de configuration de Cloud Manager.
- Générer du trafic vers l’application AEM.
- Vérifiez la télémétrie dans votre plateforme d’observabilité.
Prérequis
Avant de commencer, vérifiez que vous disposez des éléments suivants :
- Un environnement de développement d’évaluation ou de production AEM as a Cloud Service dans lequel WKND site ou votre propre application est déployée. OpenTelemetry n’est pas pris en charge sur les environnements à l’échelle HIPAA, les programmes Sandbox et les Environnements de développement rapide (RDE).
- Accès à avec l’autorisation de gérer les variables d’environnement et de créer et exécuter un pipeline de configuration.
- Plateforme d’observabilité qui accepte le protocole OTLP via HTTPS, avec un point d’entrée et des informations d’identification d’ingestion.
- Accédez à la plateforme d’observabilité pour vérifier et visualiser la télémétrie AEM entrante.
Étape 1 : obtenir votre point d’entrée d’observabilité et vos informations d’identification
Dans votre plateforme d’observabilité, localisez son point d’entrée d’ingestion OTLP/HTTPS et créez ou récupérez les informations d’identification d’ingestion appropriées. Consultez la documentation de votre plateforme pour obtenir des instructions.
Vous ne savez pas quelle plateforme utiliser ? Voir Choisir une plateforme d’observabilité.
Ce tutoriel utilise une plateforme d’observabilité auto-hébergée qui prend en charge OTLP via HTTPS et nécessite un jeton d’authentification de base.
Étape 2 : Stocker vos informations d’observabilité dans Cloud Manager
Stockez les informations d’identification d’ingestion en tant que Cloud Manager variable d’environnement secrète.
-
Dans Adobe Cloud Manager, sélectionnez votre programme AEM.
-
Sélectionnez l’environnement cible et cliquez sur Afficher les détails.
-
Dans l’onglet Configuration, cliquez sur Ajouter/Mettre à jour et ajoutez une variable d’environnement avec les valeurs suivantes :
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 Configuration Valeur Nom OTEL_CUSTOMER_AUTHValeur Informations d’identification d’ingestion de votre fournisseur. Le format varie selon la plateforme. Pour obtenir des exemples🔗 consultez les paramètres spécifiques au fournisseur . Service appliqué Tous Type Secret Dans cet exemple, la plateforme auto-hébergée utilise un jeton d’authentification de base au format
Basic <base64(user:password)>. -
Cliquez sur Ajouter puis Enregistrer pour stocker la variable d’environnement.
Le fichier config/otel.yaml fait référence à ce secret en tant que ${{secrets.OTEL_CUSTOMER_AUTH}}. Les informations d’identification ne doivent jamais apparaître dans le référentiel AEM ou dans les journaux de pipeline.
Étape 3 : Ajouter la configuration OpenTelemetry
Dans le référentiel de votre projet AEM, créez le fichier config/otel.yaml. La plateforme auto-hébergée de ce tutoriel utilise la configuration suivante :
kind: "Otel"
version: "v1"
metadata:
envTypes:
- "dev"
- "stage"
- "prod"
data:
enabled: true
type: "generic"
endpoint: "https://my-self-hosted-observability.adobe.net"
authHeaderName: "Authorization"
authHeaderValue: "${{secrets.OTEL_CUSTOMER_AUTH}}"
metrics: true
logs: true
Les paramètres clés sont les suivants :
metadata.envTypesenabledtrue.typegeneric pour une plateforme auto-hébergée.endpointauthHeaderNameAuthorization, par exemple.authHeaderValuemetricstrue.logstrue.Effectue le suivi de l’exportation chaque fois que l’intégration est activée. Les mesures et les journaux sont facultatifs. Ils sont exportés uniquement lorsqu’ils sont définis sur true.
Par exemple, consultez l’exemple de configuration WKND suivant :
Étape 4 : déploiement de la configuration OpenTelemetry
- Validez le fichier
config/otel.yamlet poussez-le vers le référentiel et la branche que votre pipeline de configuration utilise comme source. - Dans Cloud Manager, créez ou modifiez le Pipeline de configuration pour l’environnement et vérifiez ses détails.
- Sélectionnez le nom du pipeline et cliquez sur Exécuter.
- Surveillez l’exécution du pipeline jusqu’à ce qu’elle soit terminée.
Le pipeline valide la configuration avant d’appliquer les paramètres de destination.
Étape 5 : générer le trafic AEM
Une fois le pipeline terminé, générez une activité d’application :
- Ouvrez le site WKND ou votre application sur le service de publication AEM et naviguez entre quelques pages.
- Vous pouvez éventuellement ouvrir le site WKND sur le service de création pour générer la télémétrie de création.
Patientez quelques minutes pour que la télémétrie atteigne votre plateforme d’observabilité.
Etape 6 : Vérification de la télémétrie dans votre plateforme d’observabilité
Ouvrez votre plateforme d’observabilité et recherchez la télémétrie. Les étapes de localisation des traces, des mesures et des journaux varient selon la plateforme. Les captures d’écran suivantes proviennent des tableaux de bord de la plateforme d’observabilité basés sur Grafana.
Recherche du service AEM
Recherchez un nom de service AEM similaire à :
cm-p<program>-e<environment>-aem-publish-<environment-type>
Dans la plateforme auto-hébergée utilisée dans ce tutoriel, la télémétrie du service de publication se présente comme suit :
Inspecter les traces
Recherchez les plages de requêtes HTTP entrantes qui correspondent à vos requêtes de page WKND. Ouvrez une trace et vérifiez le nom, la durée et les plages de requêtes associées de la requête.
Inspecter les mesures
Comme les jeux de configuration metrics: true, recherchez les mesures JVM et HTTP telles que l’utilisation de la mémoire, la durée du nettoyage de la mémoire, le nombre de threads et la durée des requêtes HTTP.
Inspecter les journaux
Comme les jeux de configuration logs: true, vérifiez les journaux d’application AEM dans la destination. L’intégration exporte les journaux à un seuil de gravité pris en charge (WARN ou supérieur), de sorte que les visites de page ordinaires peuvent ne pas produire d’entrées de journal à ce niveau.
Résolution des problèmes
Si le pipeline de configuration échoue ou si la télémétrie n’apparaît pas dans votre plateforme d’observabilité, consultez les journaux du pipeline et vérifiez les points suivants :
metadata.envTypes inclut le type d’environnement cible (dev, stage ou prod). En cas de non-correspondance, la configuration est ignorée sans erreur.OTEL_CUSTOMER_AUTH existe en tant que Cloud Manager variable d’environnement secrète, avec Service appliqué défini sur Tous. Il ne doit pas s’agir d’une variable de pipeline.401 ou 403)service.name du fournisseur.logs: true est configuré et que l’application AEM a généré des entrées de journal au niveau WARN ou supérieur.Si le problème persiste, contactez l’assistance Adobe et fournissez l’identifiant du programme AEM, l’identifiant de l’environnement, l’identifiant d’exécution du pipeline de configuration, le message d’erreur exact et les détails du fournisseur d’observabilité. N’incluez jamais d’informations d’authentification ou de valeurs secrètes.
Pour obtenir des exemples de configuration et des informations de dépannage supplémentaires, consultez la documentation du produit OpenTelemetry.
Étapes suivantes
Vous avez configuré OpenTelemetry pour AEM as a Cloud Service et vérifié que la télémétrie de l’exemple d’application WKND est disponible dans votre plateforme d’observabilité.
Vous pouvez désormais utiliser cette télémétrie pour analyser les requêtes lentes ou en échec, surveiller les performances JVM et HTTP, et corréler les journaux d’application avec les traces afin de mieux comprendre le comportement des applications AEM.
Pour étendre la télémétrie à votre logique spécifique à l’application, consultez Instrumentation personnalisée avec OpenTelemetry.
Pour explorer d’autres options de configuration, les fournisseurs d’observabilité pris en charge et les exigences de mise en réseau, reportez-vous à la documentation du produit OpenTelemetry.