View a markdown version of this page

Migrer des métriques Classic vers les métriques OTel - 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.

Migrer des métriques Classic vers les métriques OTel

Les clients qui publient actuellement des métriques personnalisées via PutMetricData ou EMF peuvent migrer progressivement vers le parcours OTel. Il n'y a pas de jour férié : la migration s'effectue charge par charge de travail, à votre propre rythme.

Démarche de migration

La migration se déroule en quatre phases :

  1. Dual-write— Publiez des métriques via les chemins Classic et OTel simultanément.

  2. Valider — Vérifiez que les métriques OTel apparaissent dans Query Studio via ProMQL.

  3. Recréez les consommateurs : mettez à jour les alarmes et les tableaux de bord pour utiliser les noms des métriques ProMQL et OTel.

  4. Réduction : arrêtez la publication classique après avoir validé les clients d'OTel.

Étape 1 : Instrument avec le SDK OTel (double écriture)

Ajoutez le SDK OTel à vos PutMetricData appels existants. Les deux chemins peuvent être publiés simultanément : vous ne perdez pas de données.

# Existing Classic publishing (keep running during migration) cloudwatch.put_metric_data( Namespace='MyApp', MetricData=[{'MetricName': 'RequestLatency', 'Value': 42.5, 'Unit': 'Milliseconds'}] ) # New OTel publishing (add this) from opentelemetry import metrics meter = metrics.get_meter("my-app") histogram = meter.create_histogram("http_request_duration_seconds") histogram.record(0.0425, {"method": "GET", "path": "/api/users"})

Étape 2 : vérification dans Query Studio

Pour vérifier que vos métriques OTel arrivent, ouvrez la CloudWatch console et accédez à Query Studio. Recherchez votre métrique :

http_request_duration_seconds

Vérifiez que les données apparaissent avec les étiquettes que vous attendez.

Étape 3 : recréer des alarmes sur les métriques OTel

Créez de nouvelles alarmes qui interrogent les métriques OTel à l'aide d'expressions ProMQL. L'exemple suivant montre une alarme classique et son équivalent OTel.

Alarme classique :

aws cloudwatch put-metric-alarm \ --alarm-name "high-latency" \ --namespace "MyApp" \ --metric-name "RequestLatency" \ --statistic Average --threshold 100 ...

Équivalent OTel (alarme ProMQL) :

aws cloudwatch put-metric-alarm \ --alarm-name "high-latency-otel" \ --metrics '[{"Id":"q1","Expression":"avg(http_request_duration_seconds{path=\"/api/users\"}) * 1000","Period":300,"ReturnData":true}]' \ --threshold 100 ...

Lancez les deux alarmes en parallèle jusqu'à ce que vous soyez sûr que la version OTel se déclenche correctement.

Étape 4 : Arrêter la publication classique

Après avoir validé vos alarmes et tableaux de bord OTel, supprimez les PutMetricData appels du code de votre application. Les indicateurs classiques cessent immédiatement d'entraîner des frais.

Cartographie des noms de métriques

Le tableau suivant présente les noms de métriques classiques courants et leurs équivalents OTel suggérés.

Nom classique Nom d'hôtel suggéré Remarques

RequestLatency (millisecondes)

http_request_duration_seconds

Convertir en secondes (convention OTel)

RequestCount

http_requests_total

Utiliser le _total suffixe pour les compteurs

ErrorCount

http_server_errors_total

Utiliser le _total suffixe

QueueDepth

profondeur de file d'attente

Jauge : aucun suffixe n'est nécessaire

Qu'en est-il AWS indicateurs vendus ?

Il n'est pas nécessaire de AWS migrer les métriques fournies (processeur Amazon EC2, connexions Amazon RDS, etc.) manuellement. Activez l'enrichissement des métriques OTel Vended pour les rendre automatiquement interrogeables via ProMQL. Pour de plus amples informations, veuillez consulter AWS métriques vendues au format OpenTelemetry.