-
Notifications
You must be signed in to change notification settings - Fork 646
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
Prometheus exporter handles instrumentation scope and prevents collisions #3072
Comments
One additional consideration: The prometheus spec says:
When name collisions between two metrics occur, and we handle that by combining the two metic groups (e.g. adopting one of the two descriptions), we have to make sure the metrics points for a given metric family are grouped together. For example, we might produce these metrics today, if we had a
This would not be valid per the prometheus spec. If we adopted the spec for instrumentation scope labels, and prevented duplicate type and descriptions, we would get:
But we still need to make sure the resulting metric lines are grouped by metric name like this:
|
Hi @dashpole, has this feature been implemented yet? |
not that i'm aware of |
Thanks for the reply, is there any plans to implement this? I'm from gRPC team and working on Python OpenTelemetry integration, without those labels Python will fail our interoperability tests. |
Ad-hoc run: - [x] [grpc/core/master/linux/psm-csm-python](https://source.cloud.google.com/results/invocations/ba5c2183-34e0-4442-89e9-afd65eff94b1) ### Note * Removed `otel_scope_name` and `otel_scope_version` tag for Python because python Prometheus exporter doesn't have them yet: open-telemetry/opentelemetry-python#3072
Now that open-telemetry/opentelemetry-specification#2703 is released, we can update the prometheus exporter to make use of OpenTelemetry scope, particularly for reducing collisions between metrics with the same name.
Describe the solution you'd like
There are a few components:
otel_scope_name
andotel_scope_version
attributes to all metrics based on the instrumentation scope name and version.otel_scope_info
metric following https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/compatibility/prometheus_and_openmetrics.md#instrumentation-scope-1.Note that the exporter SHOULD do the above by default, but may allow disabling the behavior.
The text was updated successfully, but these errors were encountered: