Instrumentation de scripts - AWS X-Ray

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.

Instrumentation de scripts

Note

End-of-support avis — Le 25 février 2027, AWS X-Ray cessera de prendre en charge AWS X-Ray SDKs et Daemon. Après le 25 février 2027, vous ne recevrez plus de mises à jour ni de versions. Pour plus d'informations sur le calendrier de support, consultezChronologie de fin de support du SDK et du daemon X-Ray. Nous vous recommandons de migrer vers OpenTelemetry. Pour plus d'informations sur la migration vers OpenTelemetry, consultez la section Migration de l'instrumentation X-Ray vers OpenTelemetry l'instrumentation.

Vous pouvez également instrumenter le code qui ne fait pas partie de l'application. Lorsque le daemon X-Ray est en cours d'exécution, il transmet tous les segments qu'il reçoit à X-Ray, même s'ils ne sont pas générés par le SDK de X-Ray. Scorekeep utilise ses propres scripts pour instrumenter la build qui compile l'application pendant le déploiement.

Exemple bin/build.sh— Script de construction instrumenté
SEGMENT=$(python bin/xray_start.py) gradle build --quiet --stacktrace &> /var/log/gradle.log; GRADLE_RETURN=$? if (( GRADLE_RETURN != 0 )); then echo "Gradle failed with exit status $GRADLE_RETURN" >&2 python bin/xray_error.py "$SEGMENT" "$(cat /var/log/gradle.log)" exit 1 fi python bin/xray_success.py "$SEGMENT"

xray_start.py, xray_error.py et xray_success.py sont de simples scripts Python qui construisent des objets de segment, les convertissent en documents JSON et les envoient au démon via UDP. Si la compilation de Gradle échoue, vous pouvez trouver le message d'erreur en cliquant sur le nœud scorekeep-build dans la carte de suivi de la console X-Ray.

Diagram showing client connection to Scorekeep-build with average time of 14.6s and 0.07/min.
Timeline view showing Scorekeep-build process with 14.6 second duration and warning icon.
Error message showing build failure due to missing ElasticBeanstalkPlugin symbol in RdsWebConfig class.