From 88f9bf8fd1d0b1a4a8e4450496c912f740733601 Mon Sep 17 00:00:00 2001 From: Pawel Szkamruk Date: Tue, 1 Oct 2024 13:46:07 +0200 Subject: [PATCH] k8s attributes procesor for cluster receiver to ingest events into index from annotation  Conflicts:  helm-charts/splunk-otel-collector/templates/config/_common.tpl --- .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../configmap-cluster-receiver.yaml | 26 ++++++++++++++++ .../v1.29/controller_manager_metrics.yaml | 2 +- .../expected/v1.29/coredns_metrics.yaml | 2 +- .../_otel-k8s-cluster-receiver-config.tpl | 1 + .../deployment-cluster-receiver.yaml | 30 ------------------- 33 files changed, 757 insertions(+), 32 deletions(-) diff --git a/examples/add-filter-processor/rendered_manifests/configmap-cluster-receiver.yaml b/examples/add-filter-processor/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/add-filter-processor/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/add-filter-processor/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/add-kafkametrics-receiver/rendered_manifests/configmap-cluster-receiver.yaml b/examples/add-kafkametrics-receiver/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/add-kafkametrics-receiver/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/add-kafkametrics-receiver/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/add-receiver-creator/rendered_manifests/configmap-cluster-receiver.yaml b/examples/add-receiver-creator/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/add-receiver-creator/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/add-receiver-creator/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/add-sampler/rendered_manifests/configmap-cluster-receiver.yaml b/examples/add-sampler/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/add-sampler/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/add-sampler/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/autodetect-istio/rendered_manifests/configmap-cluster-receiver.yaml b/examples/autodetect-istio/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/autodetect-istio/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/autodetect-istio/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/collector-all-modes/rendered_manifests/configmap-cluster-receiver.yaml b/examples/collector-all-modes/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/collector-all-modes/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/collector-all-modes/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/controlplane-histogram-metrics/rendered_manifests/configmap-cluster-receiver.yaml b/examples/controlplane-histogram-metrics/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/controlplane-histogram-metrics/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/controlplane-histogram-metrics/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/crio-logging/rendered_manifests/configmap-cluster-receiver.yaml b/examples/crio-logging/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/crio-logging/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/crio-logging/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/default/rendered_manifests/configmap-cluster-receiver.yaml b/examples/default/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/default/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/default/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/disable-persistence-queue-traces/rendered_manifests/configmap-cluster-receiver.yaml b/examples/disable-persistence-queue-traces/rendered_manifests/configmap-cluster-receiver.yaml index 840b317d9d..5ab0182540 100644 --- a/examples/disable-persistence-queue-traces/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/disable-persistence-queue-traces/rendered_manifests/configmap-cluster-receiver.yaml @@ -47,6 +47,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name k8sattributes/metrics: extract: annotations: diff --git a/examples/distribution-aks/rendered_manifests/configmap-cluster-receiver.yaml b/examples/distribution-aks/rendered_manifests/configmap-cluster-receiver.yaml index 190404b7d7..3f8b0d1768 100644 --- a/examples/distribution-aks/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/distribution-aks/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/distribution-eks-fargate/rendered_manifests/configmap-cluster-receiver.yaml b/examples/distribution-eks-fargate/rendered_manifests/configmap-cluster-receiver.yaml index 762b9f0728..9ca92dabbf 100644 --- a/examples/distribution-eks-fargate/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/distribution-eks-fargate/rendered_manifests/configmap-cluster-receiver.yaml @@ -33,6 +33,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/distribution-eks/rendered_manifests/configmap-cluster-receiver.yaml b/examples/distribution-eks/rendered_manifests/configmap-cluster-receiver.yaml index ea5d20dcdb..654165851e 100644 --- a/examples/distribution-eks/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/distribution-eks/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/distribution-gke-autopilot/rendered_manifests/configmap-cluster-receiver.yaml b/examples/distribution-gke-autopilot/rendered_manifests/configmap-cluster-receiver.yaml index b7681e6268..850bef5e2e 100644 --- a/examples/distribution-gke-autopilot/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/distribution-gke-autopilot/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/distribution-gke/rendered_manifests/configmap-cluster-receiver.yaml b/examples/distribution-gke/rendered_manifests/configmap-cluster-receiver.yaml index b7681e6268..850bef5e2e 100644 --- a/examples/distribution-gke/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/distribution-gke/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/distribution-openshift/rendered_manifests/configmap-cluster-receiver.yaml b/examples/distribution-openshift/rendered_manifests/configmap-cluster-receiver.yaml index 27859c200f..b691d29ca6 100644 --- a/examples/distribution-openshift/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/distribution-openshift/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/enable-operator-and-auto-instrumentation/rendered_manifests/configmap-cluster-receiver.yaml b/examples/enable-operator-and-auto-instrumentation/rendered_manifests/configmap-cluster-receiver.yaml index a7d0b506ca..34fa219e3d 100644 --- a/examples/enable-operator-and-auto-instrumentation/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/enable-operator-and-auto-instrumentation/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/enable-persistence-queue/rendered_manifests/configmap-cluster-receiver.yaml b/examples/enable-persistence-queue/rendered_manifests/configmap-cluster-receiver.yaml index 840b317d9d..5ab0182540 100644 --- a/examples/enable-persistence-queue/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/enable-persistence-queue/rendered_manifests/configmap-cluster-receiver.yaml @@ -47,6 +47,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name k8sattributes/metrics: extract: annotations: diff --git a/examples/enabled-pprof-extension/rendered_manifests/configmap-cluster-receiver.yaml b/examples/enabled-pprof-extension/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/enabled-pprof-extension/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/enabled-pprof-extension/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/fluentd-multiline-logs-java-stack-traces/rendered_manifests/configmap-cluster-receiver.yaml b/examples/fluentd-multiline-logs-java-stack-traces/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/fluentd-multiline-logs-java-stack-traces/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/fluentd-multiline-logs-java-stack-traces/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/fluentd-refresh-interval/rendered_manifests/configmap-cluster-receiver.yaml b/examples/fluentd-refresh-interval/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/fluentd-refresh-interval/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/fluentd-refresh-interval/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/kubernetes-windows-nodes/rendered_manifests/configmap-cluster-receiver.yaml b/examples/kubernetes-windows-nodes/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/kubernetes-windows-nodes/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/kubernetes-windows-nodes/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/multi-metrics/rendered_manifests/configmap-cluster-receiver.yaml b/examples/multi-metrics/rendered_manifests/configmap-cluster-receiver.yaml index 840b317d9d..5ab0182540 100644 --- a/examples/multi-metrics/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/multi-metrics/rendered_manifests/configmap-cluster-receiver.yaml @@ -47,6 +47,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name k8sattributes/metrics: extract: annotations: diff --git a/examples/only-metrics-platform/rendered_manifests/configmap-cluster-receiver.yaml b/examples/only-metrics-platform/rendered_manifests/configmap-cluster-receiver.yaml index 840b317d9d..5ab0182540 100644 --- a/examples/only-metrics-platform/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/only-metrics-platform/rendered_manifests/configmap-cluster-receiver.yaml @@ -47,6 +47,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name k8sattributes/metrics: extract: annotations: diff --git a/examples/only-metrics/rendered_manifests/configmap-cluster-receiver.yaml b/examples/only-metrics/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/only-metrics/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/only-metrics/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/route-data-through-gateway-deployed-separately/rendered_manifests/configmap-cluster-receiver.yaml b/examples/route-data-through-gateway-deployed-separately/rendered_manifests/configmap-cluster-receiver.yaml index 182cbf54ce..e7460761be 100644 --- a/examples/route-data-through-gateway-deployed-separately/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/route-data-through-gateway-deployed-separately/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/target-allocator/rendered_manifests/configmap-cluster-receiver.yaml b/examples/target-allocator/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/target-allocator/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/target-allocator/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/use-proxy/rendered_manifests/configmap-cluster-receiver.yaml b/examples/use-proxy/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/use-proxy/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/use-proxy/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/examples/with-target-allocator/rendered_manifests/configmap-cluster-receiver.yaml b/examples/with-target-allocator/rendered_manifests/configmap-cluster-receiver.yaml index 193c4de474..6dbc2a0b55 100644 --- a/examples/with-target-allocator/rendered_manifests/configmap-cluster-receiver.yaml +++ b/examples/with-target-allocator/rendered_manifests/configmap-cluster-receiver.yaml @@ -30,6 +30,32 @@ data: processors: batch: send_batch_max_size: 32768 + k8sattributes/clusterReceiver: + extract: + annotations: + - from: pod + key: splunk.com/sourcetype + - from: namespace + key: splunk.com/index + tag_name: com.splunk.index + - from: pod + key: splunk.com/index + tag_name: com.splunk.index + metadata: + - k8s.namespace.name + - k8s.node.name + - k8s.pod.name + - k8s.pod.uid + - container.id + - container.image.name + - container.image.tag + pod_association: + - sources: + - from: resource_attribute + name: k8s.namespace.name + - sources: + - from: resource_attribute + name: k8s.node.name memory_limiter: check_interval: 2s limit_mib: ${SPLUNK_MEMORY_LIMIT_MIB} diff --git a/functional_tests/testdata_histogram/expected/v1.29/controller_manager_metrics.yaml b/functional_tests/testdata_histogram/expected/v1.29/controller_manager_metrics.yaml index cf64577368..5504487d8b 100644 --- a/functional_tests/testdata_histogram/expected/v1.29/controller_manager_metrics.yaml +++ b/functional_tests/testdata_histogram/expected/v1.29/controller_manager_metrics.yaml @@ -4883,4 +4883,4 @@ resourceMetrics: name: node_ipam_controller_cidrset_allocation_tries_per_request scope: name: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/prometheusreceiver - version: v0.110.0 + version: v0.109.0 diff --git a/functional_tests/testdata_histogram/expected/v1.29/coredns_metrics.yaml b/functional_tests/testdata_histogram/expected/v1.29/coredns_metrics.yaml index a379eb94dd..82b43fc357 100644 --- a/functional_tests/testdata_histogram/expected/v1.29/coredns_metrics.yaml +++ b/functional_tests/testdata_histogram/expected/v1.29/coredns_metrics.yaml @@ -388,4 +388,4 @@ resourceMetrics: name: coredns_kubernetes_rest_client_rate_limiter_duration_seconds scope: name: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/prometheusreceiver - version: v0.110.0 + version: v0.109.0 diff --git a/helm-charts/splunk-otel-collector/templates/config/_otel-k8s-cluster-receiver-config.tpl b/helm-charts/splunk-otel-collector/templates/config/_otel-k8s-cluster-receiver-config.tpl index 974927a7da..7a853dca1b 100644 --- a/helm-charts/splunk-otel-collector/templates/config/_otel-k8s-cluster-receiver-config.tpl +++ b/helm-charts/splunk-otel-collector/templates/config/_otel-k8s-cluster-receiver-config.tpl @@ -73,6 +73,7 @@ receivers: {{- end }} processors: + {{- include "splunk-otel-collector.k8sClusterReceiverAttributesProcessor" . | nindent 2 }} {{- include "splunk-otel-collector.otelMemoryLimiterConfig" . | nindent 2 }} {{- if (eq (include "splunk-otel-collector.platformMetricsEnabled" $) "true") }} diff --git a/helm-charts/splunk-otel-collector/templates/deployment-cluster-receiver.yaml b/helm-charts/splunk-otel-collector/templates/deployment-cluster-receiver.yaml index 76ca03fbb6..108181e039 100644 --- a/helm-charts/splunk-otel-collector/templates/deployment-cluster-receiver.yaml +++ b/helm-charts/splunk-otel-collector/templates/deployment-cluster-receiver.yaml @@ -91,15 +91,6 @@ spec: image: public.ecr.aws/amazonlinux/amazonlinux:latest imagePullPolicy: IfNotPresent command: ["bash", "-c", "/splunk-scripts/init-eks-fargate-cluster-receiver.sh"] - env: - - name: K8S_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: K8S_NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName volumeMounts: - name: init-eks-fargate-cluster-receiver-script mountPath: /splunk-scripts @@ -132,27 +123,6 @@ spec: env: - name: SPLUNK_MEMORY_TOTAL_MIB value: "{{ include "splunk-otel-collector.convertMemToMib" $clusterReceiver.resources.limits.memory | int64 }}" - - name: K8S_NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - - name: K8S_POD_IP - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: status.podIP - - name: K8S_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: K8S_POD_UID - valueFrom: - fieldRef: - fieldPath: metadata.uid - - name: K8S_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace {{- if (eq (include "splunk-otel-collector.splunkO11yEnabled" .) "true") }} - name: SPLUNK_OBSERVABILITY_ACCESS_TOKEN valueFrom: