Skip to content
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

Stabilize the MetricProducer #3685

Merged
merged 6 commits into from
Sep 12, 2023
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ release.
([#3670](https://github.com/open-telemetry/opentelemetry-specification/pull/3670))
- Rename "advice" to "advisory parameters".
([#3662](https://github.com/open-telemetry/opentelemetry-specification/pull/3662))
- Stabilize the `MetricProducer`.
([#3685](https://github.com/open-telemetry/opentelemetry-specification/pull/3685))

### Logs

Expand Down
8 changes: 6 additions & 2 deletions specification/metrics/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -1079,7 +1079,7 @@ SHOULD provide at least the following:
* The default output `aggregation` (optional), a function of instrument kind. If not configured, the [default aggregation](#default-aggregation) SHOULD be used.
* The default output `temporality` (optional), a function of instrument kind. If not configured, the Cumulative temporality SHOULD be used.
* **Status**: [Experimental](../document-status.md) - The default aggregation cardinality limit to use, a function of instrument kind. If not configured, a default value of 2000 SHOULD be used.
* **Status**: [Feature-freeze](../document-status.md) - Zero of more [MetricProducer](#metricproducer)s (optional) to collect metrics from in addition to metrics from the SDK.
* Zero of more [MetricProducer](#metricproducer)s (optional) to collect metrics from in addition to metrics from the SDK.

The [MetricReader.Collect](#collect) method allows general-purpose
`MetricExporter` instances to explicitly initiate collection, commonly
Expand Down Expand Up @@ -1468,7 +1468,7 @@ modeled to interact with other components in the SDK:

## MetricProducer

**Status**: [Feature-freeze](../document-status.md)
**Status**: [Stable](../document-status.md)

`MetricProducer` defines the interface which bridges to third-party metric
sources MUST implement so they can be plugged into an OpenTelemetry
Expand All @@ -1493,6 +1493,10 @@ libraries to facilitate conversion between delta and cumulative temporalities.
+-----------------+ +--------------+
```

When new OpenTelemetry integrations are added, the API is the preferred
integration point. The `MetricProducer` is only meant for integrations that
bridge pre-processed data.

### Interface Definition

A `MetricProducer` MUST support the following functions:
Expand Down