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

Make SDK Tracer/Meter/Logger Creation more normative #3529

Merged
merged 15 commits into from
Jun 26, 2023
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,21 @@ release.

### Traces

- Make SDK Tracer Creation more normative.
([#3529](https://github.com/open-telemetry/opentelemetry-specification/pull/3529))

### Metrics

- Refine SDK MeterProvider configuration section.
([#3522](https://github.com/open-telemetry/opentelemetry-specification/pull/3522))
- Make SDK Meter Creation more normative.
([#3529](https://github.com/open-telemetry/opentelemetry-specification/pull/3529))

### Logs

- Make SDK Logger Creation more normative.
([#3529](https://github.com/open-telemetry/opentelemetry-specification/pull/3529))

### Resource

### Compatibility
Expand Down
10 changes: 6 additions & 4 deletions specification/logs/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,12 @@ The SDK SHOULD allow the creation of multiple independent `LoggerProviders`s.

### Logger Creation

New `Logger` instances are always created through a `LoggerProvider`
(see [Bridge API](bridge-api.md)). The `name`, `version` (optional),
`schema_url` (optional), and `attributes` (optional) supplied to
the `LoggerProvider` must be used to create
It SHOULD only be possible to create `Logger` instances through a `LoggerProvider`
(see [Bridge API](bridge-api.md)).

The `LoggerProvider` MUST implement the [Get a Logger API](bridge-api.md#get-a-logger).

The input provided by the user MUST be used to create
an [`InstrumentationScope`](../glossary.md#instrumentation-scope) instance which
is stored on the created `Logger`.

Expand Down
10 changes: 6 additions & 4 deletions specification/metrics/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,10 +97,12 @@ The SDK SHOULD allow the creation of multiple independent `MeterProvider`s.

### Meter Creation

New `Meter` instances are always created through a `MeterProvider`
(see [API](./api.md#meterprovider)). The `name`, `version` (optional),
`schema_url` (optional), and `attributes` (optional) arguments supplied to
the `MeterProvider` MUST be used to create
It SHOULD only be possible to create `Meter` instances through a `MeterProvider`
(see [API](./api.md#meterprovider)).
jack-berg marked this conversation as resolved.
Show resolved Hide resolved

The `MeterProvider` MUST implement the [Get a Meter API](api.md#get-a-meter).

The input provided by the user MUST be used to create
cijothomas marked this conversation as resolved.
Show resolved Hide resolved
an [`InstrumentationScope`](../glossary.md#instrumentation-scope) instance which
is stored on the created `Meter`.

Expand Down
10 changes: 6 additions & 4 deletions specification/trace/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,12 @@ linkTitle: SDK

### Tracer Creation

New `Tracer` instances are always created through a `TracerProvider`
(see [API](api.md#tracerprovider)). The `name`, `version` (optional),
`schema_url` (optional), and `attributes` (optional) arguments supplied to
the `TracerProvider` must be used to create
It SHOULD only be possible to create `Tracer` instances through a `TracerProvider`
(see [API](./api.md#tracerprovider)).

The `TracerProvider` MUST implement the [Get a Tracer API](api.md#get-a-tracer).

The input provided by the user MUST be used to create
an [`InstrumentationScope`](../glossary.md#instrumentation-scope) instance which
is stored on the created `Tracer`.

Expand Down