78 lines
1.7 KiB
YAML
78 lines
1.7 KiB
YAML
# OTel Collector config
|
|
#
|
|
# Receivers: OTLP (gRPC + HTTP) from backend, ui, runner
|
|
# Processors: batch for efficiency, resource detection for host metadata
|
|
# Exporters: Tempo (traces), Prometheus (metrics), Loki (logs)
|
|
|
|
receivers:
|
|
otlp:
|
|
protocols:
|
|
grpc:
|
|
endpoint: 0.0.0.0:4317
|
|
http:
|
|
endpoint: 0.0.0.0:4318
|
|
|
|
processors:
|
|
batch:
|
|
timeout: 5s
|
|
send_batch_size: 512
|
|
|
|
# Attach host metadata to all telemetry
|
|
resourcedetection:
|
|
detectors: [env, system]
|
|
timeout: 5s
|
|
|
|
exporters:
|
|
# Traces → Tempo
|
|
otlp/tempo:
|
|
endpoint: tempo:4317
|
|
tls:
|
|
insecure: true
|
|
|
|
# Metrics → Prometheus (remote write)
|
|
prometheusremotewrite:
|
|
endpoint: "http://prometheus:9090/api/v1/write"
|
|
tls:
|
|
insecure_skip_verify: true
|
|
|
|
# Logs → Loki (via OTLP HTTP endpoint)
|
|
otlphttp/loki:
|
|
endpoint: "http://loki:3100/otlp"
|
|
tls:
|
|
insecure: true
|
|
|
|
# Collector self-observability (optional debug)
|
|
debug:
|
|
verbosity: basic
|
|
|
|
extensions:
|
|
health_check:
|
|
endpoint: 0.0.0.0:13133
|
|
pprof:
|
|
endpoint: 0.0.0.0:1777
|
|
|
|
service:
|
|
extensions: [health_check, pprof]
|
|
telemetry:
|
|
metrics:
|
|
# otel-collector v0.103+ replaced `address` with `readers`
|
|
readers:
|
|
- pull:
|
|
exporter:
|
|
prometheus:
|
|
host: 0.0.0.0
|
|
port: 8888
|
|
pipelines:
|
|
traces:
|
|
receivers: [otlp]
|
|
processors: [resourcedetection, batch]
|
|
exporters: [otlp/tempo]
|
|
metrics:
|
|
receivers: [otlp]
|
|
processors: [resourcedetection, batch]
|
|
exporters: [prometheusremotewrite]
|
|
logs:
|
|
receivers: [otlp]
|
|
processors: [resourcedetection, batch]
|
|
exporters: [otlphttp/loki]
|