Skip to content

Commit

Permalink
Add ForceFlush to Tracing SDK (#1452)
Browse files Browse the repository at this point in the history
* Update sdk.md

* Update CHANGELOG.md

* Update spec-compliance-matrix.md

* Update CHANGELOG.md

Co-authored-by: Christian Neumüller <[email protected]>

* Update specification/trace/sdk.md

Co-authored-by: Christian Neumüller <[email protected]>

* Update specification/trace/sdk.md

Co-authored-by: Bogdan Drutu <[email protected]>

Co-authored-by: Christian Neumüller <[email protected]>
Co-authored-by: Bogdan Drutu <[email protected]>
Co-authored-by: Bogdan Drutu <[email protected]>
  • Loading branch information
4 people authored Feb 22, 2021
1 parent 85f3fb6 commit 6a44c19
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ release.

- Adds `none` as a possible value for OTEL_TRACES_EXPORTER and OTEL_METRICS_EXPORTER to disable export
([#1439](https://github.com/open-telemetry/opentelemetry-specification/pull/1439))
- Add [`ForceFlush`](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/sdk.md#forceflush) to SDK's `TracerProvider` ([#1452](https://github.com/open-telemetry/opentelemetry-specification/pull/1452))

## v1.0.1 (2021-02-11)

Expand Down
1 change: 1 addition & 0 deletions spec-compliance-matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ status of the feature is not known.
| Get a Tracer | | + | + | + | + | + | + | + | + | + | + | + |
| Safe for concurrent calls | | + | + | + | + | + | + | + | + | + | + | + |
| Shutdown (SDK only required) | | | + | + | + | + | - | | + | + | + | + |
| ForceFlush (SDK only required) | | | + | - | - | - | - | | - | - | + | - |
| [Trace / Context interaction](specification/trace/api.md#context-interaction) | | | | | | | | | | | | |
| Get active Span | | | + | + | + | + | + | | + | + | + | + |
| Set active Span | | | + | + | + | + | + | | + | + | + | + |
Expand Down
14 changes: 14 additions & 0 deletions specification/trace/sdk.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,20 @@ make the shutdown timeout configurable.

`Shutdown` MUST be implemented at least by invoking `Shutdown` within all internal processors.

### ForceFlush

This method provides a way for provider to immediately export all spans that have not yet been exported for all the internal processors.

`ForceFlush` SHOULD provide a way to let the caller know whether it succeeded,
failed or timed out.

`ForceFlush` SHOULD complete or abort within some timeout. `ForceFlush` can be
implemented as a blocking API or an asynchronous API which notifies the caller
via a callback or an event. OpenTelemetry client authors can decide if they want to
make the flush timeout configurable.

`ForceFlush` MUST invoke `ForceFlush` on all registered `SpanProcessors`.

## Additional Span Interfaces

The [API-level definition for Span's interface](api.md#span-operations)
Expand Down

0 comments on commit 6a44c19

Please sign in to comment.