OpenTelemetry considérations relatives à la compatibilité - Amazon CloudWatch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

OpenTelemetry considérations relatives à la compatibilité

Pour intégrer les signaux d' CloudWatch application à vos applications, nous vous recommandons de supprimer complètement toute solution de surveillance des performances des applications existante de votre application au préalable. Cela inclut la suppression de tout code d’instrumentation et de toute configuration.

Même si Application Signals utilise de l' OpenTelemetry instrumentation, sa compatibilité avec votre OpenTelemetry instrumentation ou configuration existante n'est pas garantie. Dans le meilleur des cas, vous pourrez peut-être conserver certaines de vos OpenTelemetry fonctionnalités, telles que les métriques personnalisées. Veillez toutefois à lire les sections suivantes pour obtenir des détails.

Considérations à prendre en compte si vous utilisez déjà OpenTelemetry

Si vous l'utilisez déjà OpenTelemetry avec votre application, le reste de cette section contient des informations importantes pour garantir la compatibilité avec les signaux d'application.

  • Avant d'activer votre application pour Application Signals, vous devez supprimer l'injection de tout autre agent d'auto-instrumentation basé sur OpenTelemetry votre application. Cela permet d'éviter les conflits de configuration. Vous pouvez continuer à utiliser l'instrumentation manuelle en utilisant les signaux compatibles OpenTelemetry APIs et les signaux d'application.

  • Si vous utilisez une instrumentation manuelle pour générer des intervalles ou des métriques personnalisés à partir de votre application, en fonction de la complexité de l’instrumentation, l’activation d’Application Signals peut les empêcher de générer des données ou avoir un autre comportement indésirable. Vous pourrez peut-être utiliser certaines des configurations disponibles dans OpenTelemetry (à l'exception de celles mentionnées dans le tableau plus loin dans cette section) pour conserver le comportement souhaité de vos métriques ou spans existants. Pour plus d'informations sur ces configurations, consultez la section SDKConfiguration dans la OpenTelemetry documentation.

    Par exemple, en utilisant la OTEL_EXPORTER_OTLP_METRIC_ENDPOINT configuration et une instance OpenTelemetry Collector autogérée, vous pourrez peut-être continuer à envoyer vos métriques personnalisées vers la destination souhaitée.

  • Certaines variables d’environnement ou propriétés système ne doivent pas être utilisées avec Application Signals, tandis que vous pouvez en utiliser d’autres à condition de suivre les instructions du tableau. Consultez le tableau suivant pour plus d’informations.

Variable d'environnement Recommandation avec Application Signals

Variables d'environnement générales

OTEL_SDK_DISABLED

Ne doit pas être défini sur true.

OTEL_TRACES_EXPORTER

Doit avoir la valeur otlp.

OTEL_LOGS_EXPORTER

Réglez sur none pour désactiver les autres exportateurs de journaux.

OTEL_EXPORTER_OTLP_ENDPOINT

Ne doit pas être utilisé.

OTEL_EXPORTER_OTLP_METRIC_ENDPOINT

En utilisant la OTEL_EXPORTER_OTLP_METRIC_ENDPOINT configuration et une instance OpenTelemetry Collector autogérée, vous pourrez peut-être continuer à envoyer vos métriques personnalisées vers la destination souhaitée.

Dans. NETconfiguration, cette variable d'environnement est prise en charge dans l'instrumentation manuelle, mais pas dans l'instrumentation automatique. Vous ne pouvez pas utiliser cette variable d'environnement pour envoyer des métriques à vos propres points de terminaison.

OTEL_EXPORTER_OTLP_TRACES_ENDPOINT

Ne doit pas être utilisé.

OTEL_ATTRIBUTE_COUNT_LIMIT

S'il est défini, il doit être défini suffisamment haut pour inclure environ 10 attributs d'étendue supplémentaires ajoutés par CloudWatch Application Signals.

OTEL_EXPORTER_OTLP_PROTOCOL

Doit être réglé sur http/protobuf

OTEL_PROPAGATORS

Si cette option est définie, elle doit être incluse xray pour le traçage.

OTEL_TRACES_SAMPLER

Si défini, doit être xray pour utiliser l’échantillonnage centralisé X-Ray.

Pour utiliser l’échantillonnage local, définissez-le sur parentbased_traceidratio et spécifiez le taux d’échantillonnage dans OTEL_TRACES_SAMPLER_ARG.

OTEL_TRACES_SAMPLER_ARG

Si vous utilisez l’échantillon de suivi centralisé X-Ray par défaut, cette variable ne doit pas être utilisée.

Si vous utilisez plutôt l’échantillonnage local, définissez le taux d’échantillonnage dans cette variable. Par exemple, 0.05 pour un taux d’échantillonnage de 5 %.

Variables d'environnement spécifiques à Java

OTEL_JAVA_ENABLED_RESOURCE_PROVIDERS

Si cette option est définie, les détecteurs de AWS ressources doivent être inclus.

Variables d'environnement spécifiques à Python

OTEL_PYTHON_CONFIGURATOR

S'il est utilisé, doit être réglé sur aws_configurator

OTEL_PYTHON_DISTRO

S'il est utilisé, doit être réglé sur aws_distro

Variables d'environnement spécifiques à Node.js

OTEL_NODE_ENABLED_INSTRUMENTATIONS

Nous vous recommandons d'effacer cette variable afin que toutes les instrumentations soient activées par défaut.

OTEL_NODE_DISABLED_INSTRUMENTATIONS

Nous vous recommandons de supprimer cette variable. Il ADOT JavaScript SDK définira une valeur par défaut pour supprimer les données de télémétrie de faible qualité.