Skip to content
Merged
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 @@ -25,6 +25,8 @@ release.

- Add optional `Exception` parameter to Emit LogRecord.
([#4824](https://github.com/open-telemetry/opentelemetry-specification/pull/4824))
- Add normative language to the Logging API/SDK spec concurrency requirements.
([#4885](https://github.com/open-telemetry/opentelemetry-specification/pull/4885))

### Baggage

Expand Down
6 changes: 4 additions & 2 deletions specification/logs/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -169,9 +169,11 @@ provide it.
For languages which support concurrent execution the Logs APIs provide
specific guarantees and safeties.

**LoggerProvider** - all methods are safe to be called concurrently.
**LoggerProvider** - all methods MUST be documented that implementations need to
be safe for concurrent use by default.

**Logger** - all methods are safe to be called concurrently.
**Logger** - all methods MUST be documented that implementations need to
be safe for concurrent use by default.

## Ergonomic API

Expand Down
16 changes: 16 additions & 0 deletions specification/logs/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ weight: 3
+ [Export](#export)
+ [ForceFlush](#forceflush-2)
+ [Shutdown](#shutdown-1)
- [Concurrency requirements](#concurrency-requirements)

<!-- tocstop -->

Expand Down Expand Up @@ -643,3 +644,18 @@ and the destination is unavailable). [OpenTelemetry SDK](../overview.md#sdk)
authors MAY decide if they want to make the shutdown timeout configurable.

- [OTEP0150 Logging Library SDK Prototype Specification](../../oteps/logs/0150-logging-library-sdk.md)

## Concurrency requirements

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

For languages which support concurrent execution the Logging SDKs provide
specific guarantees and safeties.

**LoggerProvider** - Logger creation, `ForceFlush` and `Shutdown` MUST be safe
to be called concurrently.

**Logger** - all methods MUST be safe to be called concurrently.

**LogRecordExporter** - `ForceFlush` and `Shutdown` MUST be safe to be called
concurrently.
Loading