Coletar métricas e rastreamentos com o OpenTelemetry
Você pode coletar métricas e rastreamentos das aplicações ou serviços usando o agente do CloudWatch com o OpenTelemetry Protocol (OTLP), que é uma solução de código aberto popular. Você pode usar qualquer SDK do OpenTelemetry para enviar métricas e rastreamentos ao agente do CloudWatch. Para obter mais informações sobre os SDKs do OpenTelemetry disponíveis, consulte as APIs e os SDKs de linguagem compatível com o OpenTelemetry
Para coletar métricas e rastreamentos do OpenTelemetry, adicione uma seção otlp ao arquivo de configuração do agente do CloudWatch. A seção tem os seguintes campos:
-
grpc_endpoint: opcional. Especifica o endereço que o agente do CloudWatch deve usar para receber rastreamentos e métricas do OpenTelemetry enviados usando chamadas de procedimento remoto gRPC. O formato éip:port. Esse endereço deve corresponder ao endereço definido para o exportador de gRPC no SDK do OpenTelemetry. Se você omitir esse campo, o padrão de127.0.0.1:4317será usado. -
http_endpoint: opcional. Especifica o endereço que o agente do CloudWatch deve usar para receber rastreamentos e métricas de do OpenTelemetry enviados por HTTP. O formato éip:port. Esse endereço deve corresponder ao endereço definido para o exportador de HTTP no SDK do OpenTelemetry. Se você omitir esse campo, o padrão de127.0.0.1:4318será usado. -
tls: opcional. Especifica que o servidor deve ser configurado com TLS.-
cert_file: caminho para o certificado TLS a ser usado nas conexões necessárias do TLS. -
key_file: caminho para a chave TLS a ser usada nas conexões necessárias do TLS.
-
A seção otlp pode ser colocada em várias seções no arquivo de configuração do agente do CloudWatch, dependendo de como e para onde você deseja enviar as métricas e os rastreamentos.
Importante
Cada seção otlp necessita de um endpoint e uma porta exclusivos. Para obter informações detalhadas sobre como dividir os endpoints de métricas e rastreamentos, consulte Configuração do OTLP Exporter
Para enviar métricas para o CloudWatch ou o Amazon Managed Service for Prometheus, adicione a seção otlp em metrics_collected na seção metrics. Para obter mais informações sobre o envio de métricas para destinos diferentes, consulte Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch. O exemplo a seguir mostra uma configuração que envia métricas ao CloudWatch:
nota
Se você estiver executando o agente em ambientes com contêineres e enviando telemetria proveniente de forma externa à rede do contêiner do agente, certifique-se de especificar o endpoint como 0.0.0.0 em vez do endpoint padrão 127.0.0.1.
{ "metrics": { "metrics_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }
Para enviar métricas para o Amazon CloudWatch Logs usando o formato de métrica incorporada (EMF), adicione a seção otlp em metrics_collected na seção logs. Isso envia os logs EMF por padrão para o grupo de logs /aws/cwagent e um fluxo de logs gerado. As métricas são extraídas no namespace CWAgent por padrão. O exemplo a seguir mostra uma configuração que envia métricas de logs EMF ao CloudWatch Logs:
{ "logs": { "metrics_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }
Para enviar rastreamentos para o AWS X-Ray, adicione a seção otlp em traces_collected na seção traces. O exemplo a seguir mostra uma configuração que envia rastreamentos ao X-Ray:
{ "traces": { "traces_collected": { "otlp": { "grpc_endpoint": "127.0.0.1:4317", "http_endpoint": "127.0.0.1:4318" } } } }