# OpenTelemetry Collector Configuration for AgentDB # # This configuration sets up: # - OTLP receivers for traces and metrics # - Prometheus exporter for metrics # - Jaeger exporter for traces # - Console exporter for development receivers: otlp: protocols: http: endpoint: 0.0.0.0:4318 grpc: endpoint: 0.0.0.0:4317 processors: batch: timeout: 5s send_batch_size: 1024 memory_limiter: check_interval: 1s limit_mib: 512 # Filter out noisy spans filter/traces: error_mode: ignore traces: span: - 'attributes["http.target"] == "/health"' # Add resource attributes resource: attributes: - key: service.namespace value: agentdb action: insert - key: deployment.environment value: ${env:ENVIRONMENT} action: insert exporters: # Prometheus metrics exporter prometheus: endpoint: 0.0.0.0:8889 namespace: agentdb const_labels: environment: ${env:ENVIRONMENT} # Jaeger traces exporter jaeger: endpoint: jaeger:14250 tls: insecure: true # OTLP exporter (for additional backends) otlp: endpoint: otelcol:4317 tls: insecure: true # Console exporter for development logging: verbosity: detailed sampling_initial: 5 sampling_thereafter: 200 service: pipelines: traces: receivers: [otlp] processors: [memory_limiter, filter/traces, batch, resource] exporters: [jaeger, logging] metrics: receivers: [otlp] processors: [memory_limiter, batch, resource] exporters: [prometheus, logging] telemetry: logs: level: info metrics: level: detailed address: 0.0.0.0:8888 # Extension for health check extensions: health_check: endpoint: 0.0.0.0:13133 pprof: endpoint: 0.0.0.0:1777 zpages: endpoint: 0.0.0.0:55679