apiVersion: v1
kind: ConfigMap
metadata:
  name: {{ include "pipeline.fullname" . }}-otel-config
  labels:
    {{- include "pipeline.labels" . | nindent 4 }}
  annotations:
    meta.helm.sh/release-name: {{ .Release.Name }}
    meta.helm.sh/release-namespace: {{ .Release.Namespace }}
data:
  config.yaml: |2
    extensions:
      health_check:
      taskqueue:
        interval: 15s
        timeout: 60s
        persist:
          persis_type: configmap
      {{ if .Values.pipeline.backfill.batchModeEnabled }}
        batch_mode: true
        batch_size: "5m"
      {{ end }}
    receivers:
      metadb:
        collection_interval: 15s
        enable_backfill: true
        taskqueue: "taskqueue"
    processors:
      thanosquery:
        taskqueue: "taskqueue"
    exporters:
      debug:
        verbosity: detailed
      otlphttp:
        taskqueue: "taskqueue"
        endpoint: "http://{{ include "pipeline.fullname" . }}-vector:4318"
        timeout: 90s
        retry_on_failure:
          enabled: false  # close retry to fail quickly
    service:
      pipelines:
        metrics:
          receivers: [metadb]
          processors: [thanosquery]
          exporters: [otlphttp]
      extensions: [health_check, taskqueue]
      telemetry:
        logs:
          level: debug
