

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
<a name="metrics-otel-migrate"></a>

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
<a name="metrics-otel-migrate-approach"></a>

La migrazione segue quattro fasi:

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

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

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

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

## Fase 1: Strumento con OTel SDK (doppia scrittura)
<a name="metrics-otel-migrate-step1"></a>

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
<a name="metrics-otel-migrate-step2"></a>

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
<a name="metrics-otel-migrate-step3"></a>

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
<a name="metrics-otel-migrate-step4"></a>

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
<a name="metrics-otel-migrate-name-mapping"></a>

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?
<a name="metrics-otel-migrate-vended-metrics"></a>

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](CloudWatch-OTelEnrichment.md).