Files
2026-04-29 21:34:51 -06:00

58 lines
1.5 KiB
YAML

# OpenTelemetry Collector configuration for deflock-api
# Receives logs and metrics from the API, forwards to Grafana Cloud via the
# unified OTLP gateway (routes logs → Loki, metrics → Mimir automatically).
#
# Required environment variables (set in /etc/systemd/system/otelcol.service):
# GRAFANA_OTLP_ENDPOINT e.g. https://otlp-gateway-prod-us-east-0.grafana.net/otlp
# Found in Grafana Cloud portal → OpenTelemetry
# GRAFANA_INSTANCE_ID numeric stack ID (same for all signals)
# GRAFANA_API_KEY Grafana Cloud API key (Metrics Publisher role is sufficient)
receivers:
otlp:
protocols:
http:
endpoint: 127.0.0.1:4318
processors:
batch:
timeout: 5s
send_batch_size: 256
# Drop 404 log records to reduce noise
filter/drop_404_logs:
error_mode: ignore
logs:
log_record:
- 'attributes["http.response.status_code"] == 404'
exporters:
otlp_http/grafana:
endpoint: ${env:GRAFANA_OTLP_ENDPOINT}
auth:
authenticator: basicauth/grafana
extensions:
basicauth/grafana:
client_auth:
username: ${env:GRAFANA_INSTANCE_ID}
password: ${env:GRAFANA_API_KEY}
health_check:
endpoint: 127.0.0.1:13133
service:
telemetry:
metrics:
level: none
extensions: [basicauth/grafana, health_check]
pipelines:
logs:
receivers: [otlp]
processors: [filter/drop_404_logs, batch]
exporters: [otlp_http/grafana]
metrics:
receivers: [otlp]
processors: [batch]
exporters: [otlp_http/grafana]