-
Notifications
You must be signed in to change notification settings - Fork 487
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OTEL processor discovery component enrichment issues #5306
Comments
Hi Ofer, thank you for your report. The reason for the current behaviour of You are correct that Since
I do understand the confusion, since normally I'm planning to do the following:
I hope you are ok with this? Adding resource attributes to spans is something which many users have requested, and I'm happy that v0.37 should finally address those needs. Thank you again for your feedback, it is very helpful and appreciated! |
Hi @ptodev, thanks for the response. i would suggest maybe renaming the current discovery processor to a new more fitting name and making this one simply not rely on the prom_sd engine. the idea behind this component is truly amazing and provides so many interesting implementation possibilities that i believe it makes sense to preserve while simply reducing the limitations imposed by the prom_sd engine |
I tested I hope that the additions to the docs via #5378 as sufficient for closing this issue. I do agree that we could work on making |
What's wrong?
Seems like the
otelcol.processor.discovery
will not be really usable as it looks now.I’ll explain.
Otel semantic conventions dictate a standard structure and naming convention for resources attributes (amongst all other attributes). these attributes are becoming the agreed upon standard upon which all backend visualization and correlation engines are relying.
so for K8s, stuff like
k8s.pod.name
andk8s.namespace.name
orservice.instance.id
are expected and used to correlated stuff automatically.The way this component works today is, you create a discovery component which can provide labels for targets for example kubernetes targets will be added with labels such as
__meta_kubernetes_namespace
and__meta_kubernetes_pod_ip
.BUT, the
otelcol.processor.discovery
component will not add any resource attributes from target labels begining with__
. so we need to pass targets through adiscovery.relabel
component to map the labels from discovery to the attributes we want mapped.Then we are reminded that prometheus relabeling will not allow
.
in any label.The next major release of the agent giving us the
otelcol.processor.k8s_attributes
component hoping that will get us to a point where we are close to what the otel collector provides today…BUT, considering other use-cases like i have. For example, i have to enrich resource attributes for signals coming from containers running on instances using docker-compose where we will need the same logic to work and we do not have a k8s api to help us. this makes the component while being a great idea not useable until we get some relabel engine for targets which is not bound but the prometheus spec...
Steps to reproduce
configure the agent with attached config on a k8s pod running in a daemonset deployment
System information
k8s
Software version
Grafana Agent v0.36.2
Configuration
The text was updated successfully, but these errors were encountered: