Skip to content

Commit

Permalink
Deprecate Event API and SDK in favor of Emit Event in the Log API (#4319
Browse files Browse the repository at this point in the history
)
  • Loading branch information
trask authored Dec 6, 2024
1 parent 19d6783 commit aa4bf33
Show file tree
Hide file tree
Showing 7 changed files with 10 additions and 39 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ release.

### Events

- Deprecate Events API and SDK in favor of having Events support in the Logs API and SDK.
([#4319](https://github.com/open-telemetry/opentelemetry-specification/pull/4319))

### Baggage

### Resource
Expand Down
21 changes: 1 addition & 20 deletions spec-compliance-matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,7 @@ Disclaimer: this list of features is still a work in progress, please refer to t
| LoggerProvider.Shutdown | | | + | | + | | | + | | + | - | |
| LoggerProvider.ForceFlush | | | + | | + | | | + | | + | - | |
| Logger.Emit(LogRecord) | | | + | | + | | | + | | + | - | |
| Logger.EmitEvent(LogRecord) | | | | | | | | | | | | |
| Logger.Enabled | X | + | | | | | | | + | + | | |
| SimpleLogRecordProcessor | | | + | | + | | | + | | + | | |
| BatchLogRecordProcessor | | | + | | + | | | + | | + | | |
Expand All @@ -203,26 +204,6 @@ Disclaimer: this list of features is still a work in progress, please refer to t
| Can plug custom LogRecordExporter | | | + | | + | | | + | | + | | |
| Trace Context Injection | | | + | | + | | | + | | + | + | |

## Events

Features for the [Events API](specification/logs/event-api.md) and the [Events SDK](specification/logs/event-sdk.md).
Disclaimer: Events are currently in Development status - work in progress.

| Feature | Optional | Go | Java | JS | Python | Ruby | Erlang | PHP | Rust | C++ | .NET | Swift |
|----------------------------------------------------------------------------|----------|----|------|----|--------|------|--------|-----|------|-----|------|-------|
| [EventLoggerProvider](specification/logs/event-api.md#eventloggerprovider) | Optional | Go | Java | JS | Python | Ruby | Erlang | PHP | Rust | C++ | .NET | Swift |
| Get EventLogger | | | | | | | | | | | | |
| Get EventLogger accepts version | X | | | | | | | | | | | |
| Get EventLogger accepts schema_url | X | | | | | | | | | | | |
| Get EventLogger accepts attributes | X | | | | | | | | | | | |
| [EventLogger](specification/logs/event-api.md#eventlogger) | Optional | Go | Java | JS | Python | Ruby | Erlang | PHP | Rust | C++ | .NET | Swift |
| Emit event accepts name | | | | | | | | | | | | |
| Emit event accepts AnyValue body | X | | | | | | | | | | | |
| Emit event accepts severity | X | | | | | | | | | | | |
| Emit event accepts timestamp | X | | | | | | | | | | | |
| Emit event accepts attributes | X | | | | | | | | | | | |
| Emit event accepts context | X | | | | | | | | | | | |

## Resource

| Feature | Optional | Go | Java | JS | Python | Ruby | Erlang | PHP | Rust | C++ | .NET | Swift |
Expand Down
1 change: 0 additions & 1 deletion specification/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ path_base_for_github_subdir:
- [Metrics](metrics/api.md)
- [Logs](logs/README.md)
- [API](logs/api.md)
- [Event API](logs/event-api.md)
- SDK Specification
- [Tracing](trace/sdk.md)
- [Metrics](metrics/sdk.md)
Expand Down
4 changes: 1 addition & 3 deletions specification/logs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -230,8 +230,7 @@ processor.
### Infrastructure Logs

These are logs generated by various infrastructure components, such as
Kubernetes events (if you are wondering why events are discussed in the context
of logs see [Event API Data model](./event-api.md#event-data-model)). Like system logs, the
Kubernetes events. Like system logs, the
infrastructure logs lack a trace context and can be enriched by the resource
context - information about the node, pod, container, etc.

Expand Down Expand Up @@ -447,7 +446,6 @@ standard output.
* [Logs API](./api.md)
* [Logs SDK](./sdk.md)
* [Logs Data Model](./data-model.md)
* [Event API](./event-api.md)
* [Trace Context in non-OTLP Log Formats](../compatibility/logging_trace_context.md)

## References
Expand Down
13 changes: 2 additions & 11 deletions specification/logs/event-api.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Events API

**Status**: [Development](../document-status.md)
**Status**: [Deprecated](../document-status.md) (was never stabilized),
see [Emit Event](./api.md#emit-an-event) in the Logs API for replacement.

<details>
<summary>Table of Contents</summary>
Expand All @@ -9,7 +10,6 @@

<!-- toc -->

- [Logs API Development](#logs-api-development)
- [Event Data model](#event-data-model)
- [Event API use cases](#event-api-use-cases)
- [EventLoggerProvider](#eventloggerprovider)
Expand All @@ -31,15 +31,6 @@ The Event API consists of these main components:
provides access to `EventLogger`s.
* [EventLogger](#eventlogger) is the component responsible for emitting events.

## Logs API Development

> [!NOTE]
> We are currently in the process of defining a new [Logs API](./api.md).
The intent is that this Logs API will incorporate the current functionality of this existing Events API and once it is defined and implemented, the Events API usage will be migrated, deprecated, renamed and eventually removed.

No further work is scheduled for the current Events API definition at this time.

## Event Data model

Wikipedia’s [definition of log file](https://en.wikipedia.org/wiki/Log_file):
Expand Down
3 changes: 2 additions & 1 deletion specification/logs/event-sdk.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Events SDK

**Status**: [Development](../document-status.md)
**Status**: [Deprecated](../document-status.md) (was never stabilized),
see the [Logs SDK](./sdk.md) and [Emit Event](./api.md#emit-an-event) in the Logs API for replacement.

<details>
<summary>Table of Contents</summary>
Expand Down
4 changes: 1 addition & 3 deletions specification/versioning-and-stability.md
Original file line number Diff line number Diff line change
Expand Up @@ -247,9 +247,7 @@ Semantic Conventions defines the set of fields in the OTLP data model:
- The attribute keys provided on the LogRecord
- The attribute values provided on the LogRecord that are defined in a list
of well-known values.
- For log records that are [Log Events](logs/event-api.md)
- The following data provided to [emit event](logs/event-api.md#emit-event):
- The event name (the value of the `event.name` attribute)
- The event name (the value of the `event.name` attribute)

Things not listed in the above are not expected to remain stable via semantic
convention and are allowed (or expected) to change. A few examples:
Expand Down

0 comments on commit aa4bf33

Please sign in to comment.