Systèmes pris en charge - 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.

Systèmes pris en charge

Application Signals est pris en charge et testé sur Amazon EKS, Kubernetes natif, Amazon ECS et Amazon. EC2 Les instructions d'activation des signaux d'application sur Amazon EC2 devraient fonctionner sur toutes les plateformes compatibles avec l' CloudWatch agent et AWS Distro OpenTelemetry, mais elles n'ont pas été testées sur d'autres plateformes.

Java compatibility

Application Signals prend en charge les applications Java et prend en charge les mêmes bibliothèques et frameworks Java que AWS Distro for OpenTelemetry . Pour plus d'informations, consultez Bibliothèques, frameworks, serveurs d'applications et JVMs.

Les versions 8, 11, 17, 21 et 23 de JVM sont prises en charge.

Compatibilité avec Python

Compatibilité avec Python

Application Signals prend en charge les mêmes bibliothèques et frameworks que AWS Distro for OpenTelemetry . Pour plus d'informations, consultez la section Packages pris en charge à l'adresse opentelemetry-python-contrib.

Les versions 3.8 et ultérieures de Python sont prises en charge.

Avant d'activer les signaux d'application pour vos applications Python, tenez compte des points suivants.

  • Dans certaines applications conteneurisées, PYTHONPATH l'absence d'une variable d'environnement peut parfois empêcher l'application de démarrer. Pour résoudre ce problème, veillez à définir la variable d'PYTHONPATHenvironnement à l'emplacement du répertoire de travail de votre application. Cela est dû à un problème connu lié à l' OpenTelemetry auto-instrumentation. Pour plus d'informations sur ce problème, consultez la section Le paramètre d'auto-instrumentation Python de PYTHONPATH n'est pas conforme.

  • Pour les applications Django, des configurations supplémentaires sont requises, qui sont décrites dans la documentation OpenTelemetry Python.

    • Utilisez le --noreload drapeau pour empêcher le rechargement automatique.

    • Définissez la variable d'DJANGO_SETTINGS_MODULEenvironnement sur l'emplacement du settings.py fichier de votre application Django. Cela garantit que OpenTelemetry vous pouvez accéder et intégrer correctement vos paramètres Django.

Compatibilité avec .NET

Application Signals prend en charge les applications .NET avec l'instrumentation ADOT ( AWS Distro for Open Telemetry) sur Amazon EKS, Amazon, EC2 Amazon ECS et Kubernetes exécutés sur Amazon. EC2

Cette version prend en charge .NET 8, 9 et .NET Framework 4.6.2 et versions ultérieures.

Note

La version 1.7.0 de AWS Distro for OpenTelemetry SDK est la dernière version compatible avec .NET 6. Les nouvelles versions de .NET 6 ne sont pas prises en charge.

Application Signals prend en charge les applications .NET exécutées sur x86-64 ou ARM64 CPUs les systèmes d'exploitation Linux x64, Linux, ARM64 Microsoft Windows Server 2022 x64 et Microsoft Windows Server 2019 x64.

Compatibilité avec Node.js

Application Signals prend en charge les mêmes bibliothèques et frameworks Node.js que AWS Distro for OpenTelemetry . Pour plus d'informations, consultez Instrumentations prises en charge.

Cette version prend en charge les versions 14, 16, 18, 20 et 22 de Node.js.

Limitations connues concernant Node.js avec ESM

La AWS distribution pour Opentelemetry Node.js prend en charge deux systèmes de ECMAScript modules : Modules (ESM) et CommonJS (CJS). Pour activer les signaux d'application, nous vous recommandons d'utiliser le format du module CJS, car OpenTelemetry JavaScript le support d'ESM est expérimental et en cours de développement. Pour plus de détails, voir ECMAScript Modules vs CommonJS on GitHub.

Pour déterminer si votre application utilise CJS et non ESM, assurez-vous que votre application ne remplit pas les conditions pour activer ESM. Pour plus d'informations sur ces conditions, consultez la section Activation dans la documentation Node.js.

The AWS Distro for Opentelemetry Node.js fournit un support limité pour ESM sur la base OpenTelemetry JavaScript du support expérimental pour ESM. Cela signifie ce qui suit :

  • La version de Node.js doit être 18.19.0 ou ultérieure.

  • L'application Node.js que vous souhaitez instrumenter doit inclure @aws/aws-distro-opentelemetry-node-autoinstrumentation et @opentelemetry/instrumentation sous forme de dépendances.

  • L'application Node.js que vous souhaitez instrumenter doit démarrer avec l'option de nœud suivante :

    NODE_OPTIONS=' --import @aws/aws-distro-opentelemetry-node-autoinstrumentation/register --experimental-loader=@opentelemetry/instrumentation/hook.mjs'

Pour activer les signaux d'application avec le format du module Node.js ESM, nous proposons différentes configurations pour différentes plateformes :

OpenTelemetry compatibilité

CloudWatch Application Signals est entièrement compatible avecOpenTelemetry. Pour plus d'informations sur la façon de démarrer, reportez-vous à la section OpenTelemetry avec CloudWatch. Si vous souhaitez bénéficier d'une expérience plus intégrée, telle que l'utilisation de l' CloudWatch agent avec AWS Distro for OpenTelemetry (ADOT) SDKs, consultez Getting started with Application Signals pour trouver votre méthode de configuration préférée.

Problèmes connus

La collecte de métriques d'exécution dans la version v1.32.5 du SDK Java est connue pour ne pas fonctionner avec les applications utilisant Wildfly. JBoss Ce problème s'étend au module complémentaire Amazon CloudWatch Observability EKS, affectant les 2.3.0-eksbuild.1 versions 2.6.0-eksbuild.1 suivantes. Le problème est résolu dans la version du SDK Java v1.32.6 et dans la version complémentaire Amazon CloudWatch Observability EKS. v3.0.0-eksbuild.1

Si vous êtes concerné, mettez à niveau la version du SDK Java ou désactivez votre collecte de métriques d'exécution en ajoutant la variable d'environnement OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED=false à votre application.