apiVersion: v1 kind: ConfigMap metadata: name: agent-configmap namespace: {{ .Release.Namespace }} data: config.river: | discovery.kubernetes "pods" { role = "pod" namespaces { own_namespace = false names = [ {{ include "agent.namespaces" . }} ] } } discovery.relabel "rename_meta_labels" { targets = discovery.kubernetes.pods.targets rule { source_labels = ["__meta_kubernetes_namespace"] target_label = "namespace" } rule { source_labels = ["__meta_kubernetes_pod_name"] target_label = "pod" } rule { source_labels = ["__meta_kubernetes_namespace", "__meta_kubernetes_pod_label_app_kubernetes_io_name", "__meta_kubernetes_pod_label_app_kubernetes_io_component"] separator = "/" regex = "(.*)/(.*)/(.*)" replacement = "${1}/${2}-${3}" target_label = "job" } rule { target_label = "cluster" replacement = "{{- .Values.clusterName -}}" } } loki.source.kubernetes "pods" { targets = discovery.relabel.rename_meta_labels.output forward_to = [ {{ include "agent.loki_write_targets" . }} ] } prometheus.scrape "pods" { targets = discovery.relabel.rename_meta_labels.output forward_to = [ {{ include "agent.prometheus_write_targets" . }} ] } {{- if .Values.local.enabled }} loki.write "local" { endpoint { url = "http://loki-gateway.{{- .Release.Namespace -}}.svc.cluster.local:80/loki/api/v1/push" } } prometheus.remote_write "local" { endpoint { url = "http://{{- .Release.Name -}}-mimir-nginx.{{- .Release.Namespace -}}.svc:80/api/v1/push" } } {{- end }} {{- if .Values.cloud.enabled }} loki.write "cloud" { endpoint { url = "{{- .Values.cloud.logs.endpoint -}}/loki/api/v1/push" basic_auth { username = "{{- .Values.cloud.logs.username -}}" password = "{{- .Values.cloud.logs.password -}}" } } } prometheus.remote_write "cloud" { endpoint { url = "{{- .Values.cloud.metrics.endpoint -}}/api/prom/push" basic_auth { username = "{{- .Values.cloud.metrics.username -}}" password = "{{- .Values.cloud.metrics.password -}}" } } } {{- end }}