receivers:
  # Data sources: metrics, traces
  otlp:
    protocols:
      grpc:
        endpoint: ":4317"
      http:
        endpoint: ":55681"
  # Data sources: metrics
  prometheus:
    config:
      scrape_configs:
        - job_name: "garage"
          scrape_interval: 5s
          static_configs:
            - targets:
              - "{{ env "attr.unique.network.ip-address" }}:3909"
        - job_name: "node_exporter"
          scrape_interval: 5s
          static_configs:
            - targets:
              - "{{ env "attr.unique.network.ip-address" }}:9100"

exporters:
  logging:
    logLevel: info
  # see https://www.elastic.co/guide/en/apm/get-started/current/open-telemetry-elastic.html#open-telemetry-collector
  otlp/elastic:
    endpoint: "localhost:8200"
    tls:
      insecure: true

processors:
  batch:
  probabilistic_sampler:
    hash_seed: 42
    sampling_percentage: 10

extensions:
  health_check:
  pprof:
    endpoint: :1888
  zpages:
    endpoint: :55679

service:
  extensions: [pprof, zpages, health_check]
  pipelines:
    traces:
      receivers: [otlp]
      processors: [probabilistic_sampler, batch]
      exporters: [logging, otlp/elastic]
    metrics:
      receivers: [otlp, prometheus]
      processors: [batch]
      exporters: [logging, otlp/elastic]