# config/otel-collector.yaml # Collector configuration routing to the LGTM stack receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 tls: ca_file: /etc/otelcol-contrib/ca.crt cert_file: /etc/otelcol-contrib/otel.crt key_file: /etc/otelcol-contrib/otel.key http: endpoint: 0.0.0.0:4318 tls: ca_file: /etc/otelcol-contrib/ca.crt cert_file: /etc/otelcol-contrib/otel.crt key_file: /etc/otelcol-contrib/otel.key processors: # Batch processor for efficient data transfer batch: timeout: 5s send_batch_size: 512 exporters: # Send traces to Tempo via OTLP otlp/tempo: endpoint: tempo:4317 tls: insecure: true # Send metrics to Mimir via Prometheus remote write prometheusremotewrite/mimir: endpoint: http://mimir:9009/api/v1/push tls: insecure: true # Send logs to Loki via its native OTLP HTTP endpoint otlphttp/loki: endpoint: http://loki:3100/otlp # Keep debug output for development visibility debug: verbosity: basic service: pipelines: traces: receivers: [otlp] processors: [batch] exporters: [otlp/tempo, debug] metrics: receivers: [otlp] processors: [batch] exporters: [prometheusremotewrite/mimir, debug] logs: receivers: [otlp] processors: [batch] exporters: [otlphttp/loki, debug]