diff --git a/CHANGELOG.md b/CHANGELOG.md index 09d48bbf0a5..5ffaae67518 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,9 @@ release. ### Compatibility +- Clarify expectations about Prometheus content negotiation for metric names. + ([#4543](https://github.com/open-telemetry/opentelemetry-specification/pull/4543)) + ### SDK Configuration ### Common diff --git a/specification/metrics/sdk_exporters/prometheus.md b/specification/metrics/sdk_exporters/prometheus.md index 1fc1936b6eb..1db6f264d6c 100644 --- a/specification/metrics/sdk_exporters/prometheus.md +++ b/specification/metrics/sdk_exporters/prometheus.md @@ -74,3 +74,9 @@ The option MAY be named `without_scope_info`, and MUST be `false` by default. A Prometheus Exporter MAY support a configuration option to produce metrics without a [target info](../../compatibility/prometheus_and_openmetrics.md#resource-attributes-1) metric. The option MAY be named `without_target_info`, and MUST be `false` by default. + +## Content Negotiation + +A Prometheus Exporter MUST support content negotiation to allow clients to request +metrics in different formats based on the `Accept` header in HTTP requests. Content +negotiation MUST follow [Prometheus Content Negotiation guidelines](https://prometheus.io/docs/instrumenting/content_negotiation/).