Skip to content
Open
Show file tree
Hide file tree
Changes from all 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 @@ -22,6 +22,8 @@ release.
([#4746](https://github.com/open-telemetry/opentelemetry-specification/pull/4746))
- Allow instrument `Enabled` implementation to have additional optimizations and features.
([#4747](https://github.com/open-telemetry/opentelemetry-specification/pull/4747))
- Stabilize part of `Enabled` SDK for synchronous instruments.
([#4787](https://github.com/open-telemetry/opentelemetry-specification/pull/4787))

### Logs

Expand Down
19 changes: 9 additions & 10 deletions specification/metrics/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -872,6 +872,10 @@ It consists of the following parameters:
is [Enabled](./api.md#enabled). See [Instrument Enabled](#instrument-enabled)
for details.

It is not necessary for implementations to ensure that changes to any of these
parameters are immediately visible to callers of `Enabled`.
However, the changes MUST be eventually visible.

### Duplicate instrument registration

A _duplicate instrument registration_ occurs when more than one Instrument of
Expand Down Expand Up @@ -997,13 +1001,12 @@ must be retained.

### Instrument enabled

**Status**: [Development](../document-status.md)

The instrument [`Enabled`](./api.md#enabled) MUST return `false` when either:
The synchronous instrument [`Enabled`](./api.md#enabled) MUST return `false`
when either:

* The [MeterConfig](#meterconfig) of the `Meter` used to create the instrument
has parameter `disabled=true`.
* All [resolved views](#measurement-processing) for the instrument are
- **Status**: [Development](../document-status.md) - The [MeterConfig](#meterconfig)
of the `Meter` used to create the instrument has parameter `disabled=true`.
- All [resolved views](#measurement-processing) for the instrument are
configured with the [Drop Aggregation](#drop-aggregation).

Otherwise, it SHOULD return `true`.
Expand All @@ -1013,10 +1016,6 @@ Note: If a user makes no configuration changes, `Enabled` returns `true` since b
default `MeterConfig.disabled=false` and instruments use the default
aggregation when no matching views match the instrument.

It is not necessary for implementations to ensure that changes
to `MeterConfig.disabled` are immediately visible to callers of `Enabled`.
However, the changes MUST be eventually visible.

## Attribute limits

**Status**: [Stable](../document-status.md)
Expand Down
6 changes: 3 additions & 3 deletions specification/trace/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -212,9 +212,9 @@ It consists of the following parameters:
is [Enabled](./api.md#enabled). If `disabled` is `true`, `Enabled`
returns `false`. If `disabled` is `false`, `Enabled` returns `true`.

It is not necessary for implementations to ensure that changes to `disabled`
are immediately visible to callers of `Enabled`.
However, the changes MUST be eventually visible.
It is not necessary for implementations to ensure that changes to any of these
parameters are immediately visible to callers of `Enabled`.
However, the changes MUST be eventually visible.

### Enabled

Expand Down
Loading