Padrão de implantação de agente
No padrão de implantação de agente, os sinais de telemetria podem vir de:
- Aplicações instrumentadas com um SDK do OpenTelemetry usando o OpenTelemetry Protocol (OTLP).
- Collectors usando o exportador OTLP.
Os sinais são enviados para uma instância do Collector que executa ao lado da aplicação ou no mesmo host, como um sidecar ou DaemonSet.
Cada SDK do lado do cliente ou Collector downstream é configurado com o endereço de uma instância do Collector:
- Na aplicação, o SDK é configurado para enviar dados OTLP para um Collector.
- O Collector é configurado para enviar dados de telemetria para um ou mais backends.
Exemplo
Neste exemplo do padrão de implantação de agente, comece instrumentando
manualmente uma aplicação Java para exportar métricas
usando o SDK Java do OpenTelemetry, incluindo o valor padrão de
OTEL_METRICS_EXPORTER, otlp. Em seguida, configure o exportador
OTLP com o endereço do seu Collector. Por exemplo:
export OTEL_EXPORTER_OTLP_ENDPOINT=http://collector.example.com:4318
Em seguida, configure o Collector executando em collector.example.com:4318 da
seguinte forma:
receivers:
otlp: # o receptor OTLP para o qual a aplicação envia rastros
protocols:
http:
endpoint: 0.0.0.0:4318
exporters:
otlp/jaeger: # o Jaeger suporta OTLP diretamente
endpoint: https://jaeger.example.com:4317
sending_queue:
batch:
service:
pipelines:
traces/dev:
receivers: [otlp]
exporters: [otlp/jaeger]
receivers:
otlp: # o receptor OTLP para o qual a aplicação envia métricas
protocols:
http:
endpoint: 0.0.0.0:4318
exporters:
prometheusremotewrite: # o exportador PRW, para ingestão de métricas no backend
endpoint: https://prw.example.com/v1/api/remote_write
sending_queue:
batch:
service:
pipelines:
metrics/prod:
receivers: [otlp]
exporters: [prometheusremotewrite]
receivers:
otlp: # o receptor OTLP para o qual a aplicação envia logs
protocols:
http:
endpoint: 0.0.0.0:4318
exporters:
file: # o File Exporter, para gravar logs em um arquivo local
path: ./app42_example.log
rotation:
service:
pipelines:
logs/dev:
receivers: [otlp]
exporters: [file]
Para explorar esse padrão de ponta a ponta, veja os exemplos em Java ou Python.
Vantagens e desvantagens
A seguir estão os principais prós e contras de uso de um Collector em modo agente:
Prós:
- Fácil de começar a usar
- Mapeamento claro um-para-um entre aplicação e Collector
Contras:
- Escalabilidade limitada para equipes e recursos de infraestrutura
- Pouco flexível para implantações complexas ou em evolução
Feedback
Esta página foi útil?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!