View a markdown version of this page

Migrazione dalle metriche Classic a Otel - Amazon CloudWatch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Migrazione dalle metriche Classic a Otel

I clienti che attualmente pubblicano metriche personalizzate tramite PutMetricData o EMF possono migrare in modo incrementale verso il percorso Otel. Non esiste un giorno limite: la migrazione avviene carico per carico di lavoro secondo i vostri ritmi.

Approccio per la migrazione

La migrazione segue quattro fasi:

  1. Dual-write— Pubblica le metriche contemporaneamente tramite i percorsi Classic e Otel.

  2. Convalida: conferma che le metriche di Otel vengano visualizzate in Query Studio tramite PromQL.

  3. Ricrea i consumatori: aggiorna allarmi e dashboard per utilizzare i nomi delle metriche PromQL e Otel.

  4. Cut over: interrompi la pubblicazione classica dopo aver convalidato i consumatori di Otel.

Fase 1: Strumento con OTel SDK (doppia scrittura)

Aggiungi l'SDK di Otel alle chiamate esistenti. PutMetricData Entrambi i percorsi possono essere pubblicati contemporaneamente: non si perdono dati.

# 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"})

Passaggio 2: verifica in Query Studio

Per verificare che le metriche del tuo OTel arrivino, apri la CloudWatch console e accedi a Query Studio. Cerca la tua metrica:

http_request_duration_seconds

Verifica che i dati vengano visualizzati con le etichette che ti aspetti.

Fase 3: Ricrea gli allarmi sulle metriche di Otel

Crea nuovi allarmi che interrogano le metriche di Otel utilizzando le espressioni PromQL. L'esempio seguente mostra un allarme Classic e il suo equivalente OTel.

Allarme classico:

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

Equivalente a Otel (allarme 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 ...

Esegui entrambi gli allarmi in parallelo finché non sei sicuro che la versione di Otel si attivi correttamente.

Fase 4: Interrompere la pubblicazione classica

Dopo aver convalidato gli allarmi e i dashboard di OTel, rimuovi le PutMetricData chiamate dal codice dell'applicazione. Le metriche classiche impediscono immediatamente di incorrere in addebiti.

Mappatura metrica dei nomi

La tabella seguente mostra i nomi delle metriche classiche più comuni e gli equivalenti OTel suggeriti.

Nome classico Nome dell'hotel consigliato Note

RequestLatency (ms)

http_request_duration_seconds

Converti in secondi (convenzione Otel)

RequestCount

http_requests_total

Usa il suffisso per i contatori _total

ErrorCount

http_server_errors_total

Usa il suffisso _total

QueueDepth

queue_depth

Manometro: non è necessario alcun suffisso

Che mi dici AWS metriche vendute?

Non è necessario migrare manualmente i AWS parametri forniti (CPU Amazon EC2, connessioni Amazon RDS e così via). Abilita Otel Vend Metric Enrichment per renderli interrogabili automaticamente tramite PromQL. Per ulteriori informazioni, consulta AWS OpenTelemetry metriche vendute in formato.