Open bacherfl opened 4 months ago
Pinging code owners:
processor/k8sattributes: @dmitryax @rmfitzpatrick @fatsheep9146 @TylerHelmuth
See Adding Labels via Comments if you do not have permissions to add labels yourself.
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers
. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.
Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself.
Component(s)
processor/k8sattributes
Is your feature request related to a problem? Please describe.
Currently, the
k8sattributes
processor requires either thek8s.container.name
orcontainer.id
attribute to be present in the resource attributes to attach container level attributes, as described in the readme. This makes sense for pods with multiple containers, as otherwise it would not be possible to correctly associate the resource to the correct container. For pods containing only one container however, this requirement can likely be dropped, and the container level attributes from the only container can automatically be attached for resources coming from a matching pod. This could potentially make things a bit simpler for users, as the requirement of providing the container name or id as attributes for the resource seemed to have caused some confusion in the past (e.g. https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/32104#issuecomment-2048447690)Describe the solution you'd like
If a matching pod is found for an incoming resource, and the pod only consists of one container, automatically attach the container level attributes if they are part of the extraction rules, also when the
k8s.container.name
andcontainer.id
are not provided resource attributes.Describe alternatives you've considered
Attaching the
k8s.container.name
orcontainer.id
attribute to the resource sent to the collector will also ensure the container level attributes are attached correctly, but this is a requirement that may easily be missed by users.Additional context
If this is something we agree to add, I'm happy to work on the implementation. In the meantime I will work on a PoC to validate the suggested solution