Skip to content

Metric standard SDK behavior specification #259

@jmacd

Description

@jmacd

In #250 we've tried to steer away from specifying the behavior of the library (as there are so many possibilities) and instead focus on the semantics of the events.

It's become clear that people are confused about the behavior of the SDK because it's literally unspecified as part of the API. I believe we should prepare a companion specification to explain what the initial OpenTelemetry SDK is targeting for metrics export. This could go as far as describing an API to configure views and aggregations, or a YAML syntax to support standard configuration.

For a prometheus exporter, we need to decide on certain behaviors that are "not semantic" and therefore haven't been described in the API specification. For each of the 6 sub-kinds of metric, we need to choose an export type for Prometheus. For example, our monotonic counter becomes a prometheus counter, but our non-monotonic counter needs a firm mapping. For measure metrics, I believe we should choose a histogram metric export w/ default bucket ranges. I could imagine making the choice of Histogram vs. Summary metric be an option for the API or YAML syntax mentioned above, with support for configurable bucket ranges and configurable quantiles.

Metadata

Metadata

Assignees

Labels

area:sdkRelated to the SDK

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions