diff --git a/CHANGELOG.md b/CHANGELOG.md index b473a81978d..9c09183b198 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -45,6 +45,10 @@ release. Asynchronous Counter, and Histogram instruments choose Delta temporality by default. ([#2404](https://github.com/open-telemetry/opentelemetry-specification/pull/2404)). +- Clarify that instruments are enabled by default, even when Views are configured. + Require support for the match-all View expression having `name=*` to support + disabling instruments by default. + ([#2417](https://github.com/open-telemetry/opentelemetry-specification/pull/2417)). ### Logs diff --git a/spec-compliance-matrix.md b/spec-compliance-matrix.md index 0a85be1af1c..b940dea1843 100644 --- a/spec-compliance-matrix.md +++ b/spec-compliance-matrix.md @@ -165,6 +165,8 @@ Disclaimer: this list of features is still a work in progress, please refer to t | The updated configuration applies to all already returned `Meter`s. | if above | - | - | | - | | | | | | + | | | There is a way to register `View`s with a `MeterProvider`. | | - | + | | + | | | | | | + | | | The `View` instrument selection criteria is as specified. | | | + | | - | | | | | | + | | +| The `View` instrument selection criteria supports wildcards. | X | | | | | | | | | | | | +| The `View` instrument selection criteria supports the match-all wildcard. | | | | | | | | | | | | | | The name of the `View` can be specified. | | | + | | - | | | | | | + | | | The `View` allows configuring the name description, attributes keys and aggregation of the resulting metric stream. | | | ? | | - | | | | | | - | | | The `View` allows configuring the exemplar reservoir of resulting metric stream. | X | | ? | | - | | | | | | - | | diff --git a/specification/metrics/sdk.md b/specification/metrics/sdk.md index 5a6baa4c0b1..c4d178fd224 100644 --- a/specification/metrics/sdk.md +++ b/specification/metrics/sdk.md @@ -153,7 +153,9 @@ are the inputs: * The `name` of the Instrument(s). [OpenTelemetry SDK](../overview.md#sdk) authors MAY choose to support wildcard characters, with the question mark (`?`) matching exactly one character and the asterisk character (`*`) - matching zero or more characters. + matching zero or more characters. If wildcards are not supported in general, + OpenTelemetry SDKs MUST specifically recognize the single `*` wildcard + as matching all instruments. * The `name` of the Meter (optional). * The `version` of the Meter (optional). * The `schema_url` of the Meter (optional). @@ -214,11 +216,9 @@ made with an Instrument: know (e.g. expose [self-diagnostics logs](../error-handling.md#self-diagnostics)). * If the Instrument could not match with any of the registered `View`(s), the - SDK SHOULD provide a default behavior. The SDK SHOULD also provide a way for - the user to turn off the default behavior via MeterProvider (which means the - Instrument will be ignored when there is no match). Individual - implementations can decide what the default behavior is, and how to turn the - default behavior off. + SDK SHOULD enable the instrument using the default aggregation and temporality. + Users can configure match-all Views using [Drop aggregation](#drop-aggregation) + to disable instruments by default. Here are some examples: