extensions:
  health_check:
  # pprof:
  zpages:

receivers:
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:4317
      http:
        endpoint: 0.0.0.0:4318
  prometheus/self:
    config:
      scrape_configs:
        - job_name: otel-collector-metrics
          scrape_interval: 10s
          static_configs:
            - targets: ["localhost:8888"]

processors:
  batch:

exporters:
  otlp/tempo:
    endpoint: tempo:4317
    tls:
      insecure: true
  otlphttp/mimir:
    endpoint: http://mimir:9009/otlp
  otlphttp/loki:
    endpoint: http://loki:3100/otlp

connectors:
  spanmetrics:
    namespace: span.metrics
    histogram:
      explicit:
        buckets: [100us, 1ms, 2ms, 6ms, 10ms, 100ms, 250ms, 1s, 5s, 30s, 1m, 5m]
    exemplars:
      enabled: true

service:
  extensions:
    - health_check
    - zpages

  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlp/tempo, spanmetrics]
    metrics:
      receivers: [otlp, prometheus/self, spanmetrics]
      processors: [batch]
      exporters:
        - otlphttp/mimir
    logs:
      receivers: [otlp]
      processors: [batch]
      exporters:
        - otlphttp/loki
  telemetry:
    metrics:
      address: 0.0.0.0:8888
      level: detailed