Conversation
…logic-kubernetes-collection into helmv5/k8s_tagger
deploy/helm/sumologic/conf/instrumentation/otelcol.instrumentation.conf.yaml
Show resolved
Hide resolved
Contributor
There was a problem hiding this comment.
Pull request overview
This PR makes k8sattributes (the upstream OpenTelemetry k8s metadata enrichment processor) the default instead of the deprecated SumoLogic-specific k8s_tagger processor for all three telemetry pipelines: logs, metrics, and traces. The k8s_tagger can still be opted into via the *.useSumoK8sProcessor: true flag and is planned for complete removal in helm chart v6.
Changes:
- Set
useSumoK8sProcessor: falseas the new default formetadata.logs,metadata.metrics, andotelcolInstrumentation, adding the newk8sattributesprocessor configuration block for each pipeline - Added two new flags (
extractPodLabels,extractNodeLabels) undermetadata.metricsto control metrics cardinality when usingk8sattributes - Updated all Helm golden file tests and integration tests to reflect the new default processor and the new labels it produces (notably
service.namespace)
Reviewed changes
Copilot reviewed 38 out of 39 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
deploy/helm/sumologic/values.yaml |
Changes defaults of useSumoK8sProcessor to false and adds extractPodLabels/extractNodeLabels flags; contains stale/incorrect comments |
deploy/helm/sumologic/conf/instrumentation/otelcol.instrumentation.conf.yaml |
Adds k8sattributes processor configuration for traces/metrics pipelines when useSumoK8sProcessor is false |
deploy/helm/sumologic/conf/metrics/otelcol/processors.yaml |
Adds k8sattributes configuration for metrics pipeline with conditional pod/node label extraction |
deploy/helm/sumologic/conf/logs/otelcol/config.yaml |
Adds secondary pod_association rule (namespace+name compound key) for the logs k8sattributes config |
deploy/helm/sumologic/README.md |
Adds documentation for new useSumoK8sProcessor, waitForMetadata*, extractPodLabels, and extractNodeLabels fields |
tests/helm/testdata/goldenfile/metadata_*_otc/*.output.yaml |
Updates golden files to reflect k8sattributes as new default processor |
tests/helm/testdata/goldenfile/otelcol-instrumentation-config/*.output.yaml |
Updates golden files for instrumentation config to use k8sattributes |
tests/helm/metrics_test.go |
Updates pipeline processor name assertion from k8s_tagger to k8sattributes |
tests/integration/features.go |
Adds service.namespace to expected metric labels; removes node labels (now disabled by default) |
tests/integration/internal/constants.go |
Moves node-related OTel metrics from dedicated list to FlakyMetrics |
tests/integration/helm_k8s_processor_test.go |
Removes NodeLabelsMetrics from expected metrics (now disabled by default) |
tests/integration/values/values_helm_k8s_processor.yaml |
Adds explicit extractPodLabels/extractNodeLabels flags (now redundant since they're defaults) |
tests/helm/testdata/goldenfile/metadata_logs_otc/k8sattributes.output.yaml |
Adds secondary pod_association rule |
tests/helm/testdata/goldenfile/metrics-server/basic.output.yaml |
Unrelated reordering of resource and dnsPolicy fields |
.changelog/4093.changed.txt |
Adds changelog entry |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Collaborator
|
LGTM, Check co-pilot comments regarding empty labels scenario and add the test case if needed. |
dhruv-shah-sumo
approved these changes
Mar 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed?
Made k8sattributes processor as default and deprecate k8s_tagger for logs,metrics and traces pipelines. It can be enabled again via *.useSumok8sprocessor flag
We will remove k8s_tagger completely in v6 helm chart.
Changes to note:
pod labels and node labels are the fields which increases high cardinality.
k8s_tagger was already adding pod labels, but nodelabels are newly added in k8sattributes processor and we don't want to add nodelabels by default.
So, kept the flag values as for k8sattributes,
extractPodLabels = true (Retain podlabels as like k8s_tagger)
extractNodeLabels = false (Disable nodelabels since k8s_tagger didn't added that earlier)
Comparison of enrichment done by k8s_tagger vs k8s_attributes processor. Nodelabels included in this for test, but in our change has nodelabels disabled.