Raccolta di metriche e tracce con OpenTelemetry - Amazon CloudWatch

Raccolta di metriche e tracce con OpenTelemetry

Puoi raccogliere metriche e tracce dalle applicazioni o dai servizi utilizzando l'agente CloudWatch con OpenTelemetry Protocol (OTLP), una soluzione open source molto diffusa. Puoi utilizzare qualsiasi SDK OpenTelemetry per inviare metriche e tracce all'agente CloudWatch. Per ulteriori informazioni sugli SDK OpenTelemetry disponibili, consulta OpenTelemetry Supported Language APIs & SDKs.

Per raccogliere metriche e tracce OpenTelemetry, aggiungi una sezione otlp al file di configurazione dell'agente CloudWatch. La sezione contiene i seguenti campi:

  • grpc_endpoint : Opzionale. Specifica l'indirizzo dell'agente CloudWatch da utilizzare per ascoltare le metriche o le tracce OpenTelemetry inviate utilizzando le chiamate di procedura remota gRPC. Il formato è ip:port. Questo indirizzo deve corrispondere all'indirizzo impostato per l'esportatore gRPC nell'SDK OpenTelemetry. Se ometti questo campo, verrà utilizzato il valore predefinito 127.0.0.1:4317.

  • http_endpoint : Opzionale. Specifica l'indirizzo per l'agente CloudWatch da utilizzare per ascoltare le metriche o le tracce OTLP inviate su HTTP. Il formato è ip:port. Questo indirizzo deve corrispondere all'indirizzo impostato per l'esportatore HTTP nell'SDK OpenTelemetry. Se ometti questo campo, verrà utilizzato il valore predefinito 127.0.0.1:4318.

  • tls : Opzionale. Specifica che il server deve essere configurato con TLS.

    • cert_file: il percorso del certificato TLS da utilizzare per le connessioni TLS richieste.

    • key_file: il percorso della chiave TLS da utilizzare per le connessioni TLS richieste.

La sezione otlp può essere inserita in più sezioni all'interno del file di configurazione dell'agente CloudWatch, a seconda di come e dove si desidera inviare le metriche e le tracce.

Importante

Ogni sezione otlp richiede un endpoint e una porta univoci. Per informazioni dettagliate sulla suddivisione degli endpoint di metriche e tracce, consulta OTLP Exporter Configuration nella documentazione dell'SDK OpenTelemetry.

Per inviare metriche a CloudWatch o Servizio gestito da Amazon per Prometheus, aggiungi la sezione otlp sotto metrics_collected all'interno della sezione metrics. Per ulteriori informazioni sull'invio di metriche a destinazioni diverse, consultaCreazione o modifica manuale del file di configurazione dell'agente CloudWatch. L'esempio seguente mostra una configurazione che invia le metriche a CloudWatch Logs:

Nota

Se esegui l'agente in ambienti containerizzati e invii telemetria dall'esterno della rete del container dell'agente, assicurati di specificare l'endpoint come 0.0.0.0 anziché l'endpoint predefinito 127.0.0.1.

{ "metrics": { "metrics_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }

Per inviare metriche ad Amazon CloudWatch Logs utilizzando il formato Embedded metric (EMF), aggiungi la sezione otlp sotto metrics_collected all'interno della sezione logs. Per impostazione predefinita, questo invia i log EMF al gruppo di log /aws/cwagent e un flusso di log generato. Per impostazione predefinita, le metriche vengono estratte nel namespace CWAgent. L'esempio seguente mostra una configurazione che invia le metriche come log EMF a CloudWatch Logs:

{ "logs": { "metrics_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }

Per inviare tracce a AWS X-Ray, aggiungi la sezione otlp sotto traces_collected all'interno della sezione traces. L'esempio seguente mostra una configurazione che invia le metriche a X-Ray:

{ "traces": { "traces_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }