-
Notifications
You must be signed in to change notification settings - Fork 894
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
Tracker: Stabilize prometheus compatibility specification #3737
Comments
The prometheus exporter specification needs to be updated to clarify that it needs to follow the conversion specification. |
Per the fully compliant java implementation: The java implementation currently does not serialize exponential histograms, so in incomplete in at least some sense. When I look at the prometheus exporter doc, it doesn't actually link / reference the prometheus compatibility document. This leads the definition of a "compliant" implementation ambiguous. Should update the prometheus exporter document to link to the prometheus compatibility document, and update the prometheus compatibility doc to indicate which portions of the OTLP Metric to prometheus are required for SDK exporters. |
@jack-berg Re: exponential histograms, i've tried to address that in #3872. The basic idea is that exporters should be required to support the text format. But since the text format doesn't support exponential histograms, exporters won't initially be required to support them. It also now links to the compatibility document. |
Fixes #3702 Fixes #2468 Addresses #3737 (comment) ## Changes * Add option to disable `target` info metric. * Move SDK-specific language from the compatibility spec to the prometheus exporter spec. * Disallow using OpenMetrics proto format, or Prometheus remote write formats in SDK exporters * Recommend using Prometheus client libraries * Clarify that only features supported by the text format are required to be implemented by Prometheus exporters * Require prometheus SDK exporters to follow the compatibility specification. @open-telemetry/wg-prometheus
Fixes open-telemetry#3702 Fixes open-telemetry#2468 Addresses open-telemetry#3737 (comment) ## Changes * Add option to disable `target` info metric. * Move SDK-specific language from the compatibility spec to the prometheus exporter spec. * Disallow using OpenMetrics proto format, or Prometheus remote write formats in SDK exporters * Recommend using Prometheus client libraries * Clarify that only features supported by the text format are required to be implemented by Prometheus exporters * Require prometheus SDK exporters to follow the compatibility specification. @open-telemetry/wg-prometheus
This is a tracker for stabilizing this specification, which is currently experimental: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/compatibility/prometheus_and_openmetrics.md
There are currently three compliant SDK implementations, per the compliance matix: Go, Java, Rust.
The prometheus receiver is compliant as well: open-telemetry/opentelemetry-collector-contrib#25865
Here are the open spec issues i'm aware of that block stability:
Notable non-blocking issues (additive changes):
We should also verify that the prometheus and prometheusremotewrite collector exporters are compliant before stabilizing the specification.
Of the open issues, the Prometheus WG agreed today that #3736 is the primary blocker.
@open-telemetry/wg-prometheus @MrAlias @jmacd @jsuereth
The text was updated successfully, but these errors were encountered: