|
2 | 2 |
|
3 | 3 | ## Unreleased
|
4 | 4 |
|
5 |
| -* Autoconfigure now supports an option to disable the SDK. |
6 |
| - If `otel.sdk.disabled=true`, `AutoConfiguredOpenTelemetrySdk#getOpenTelemetrySdk()` |
7 |
| - returns a minimal (but not noop) `OpenTelemetrySdk` with noop tracing, metric and logging providers. The same minimal instance is set |
8 |
| - to `GlobalOpenTelemetry`. The now deprecated property `otel.experimental.sdk.enabled` will continue to work in the same way during a transition period. |
| 5 | +This release contains a large number of changes to the log signal following a series of significant |
| 6 | +changes to |
| 7 | +the [log specification](https://github.com/open-telemetry/opentelemetry-specification/tree/main/specification/logs). |
| 8 | +The changes include renaming key classes like `LogExporter` to `LogRecordExporter`, |
| 9 | +and `LogProcessor` to `LogRecordProcessor`, and `LogEmitter` to `Logger`, and more. Additionally, a |
| 10 | +log API component has been added for emitting events and for writing log appenders. Note, the log |
| 11 | +API is not a substitute for traditional log frameworks like Log4j, JUL, SLF4J, or Logback. While the |
| 12 | +event portion of the API is intended for instrumentation authors and end users, the API for emitting |
| 13 | +LogRecords is not. |
| 14 | +See [LoggerProvider](./api/logs/src/main/java/io/opentelemetry/api/logs/LoggerProvider.java) |
| 15 | +and [Logger](./api/logs/src/main/java/io/opentelemetry/api/logs/Logger.java) javadoc for more |
| 16 | +details. |
| 17 | + |
| 18 | +### General |
| 19 | + |
| 20 | +* Add `opentelemetry-bom` as a dependency to `opentelemetry-bom-alpha`, ensuring synchronization |
| 21 | + between alpha and stable artifact versions. |
| 22 | + |
| 23 | +### API |
| 24 | + |
| 25 | +#### API Extensions |
| 26 | + |
| 27 | +* WARNING: `opentelemetry-extension-annotations` has been removed following its relocation |
| 28 | + to [opentelemetry-java-instrumentation/instrumentation-annotations](https://github.com/open-telemetry/opentelemetry-java-instrumentation/tree/main/instrumentation-annotations), |
| 29 | + which is published under |
| 30 | + coordinates `io.opentelemetry.instrumentation:opentelemetry-instrumentation-annotations:{version}`. |
| 31 | + We will push security patches to `1.18.x` as needed. The latest `opentelemetry-bom` will point |
| 32 | + to the latest published version, currently `1.18.0`. |
| 33 | + |
| 34 | +#### Logs |
| 35 | + |
| 36 | +* Introduce log API for emitting events and writing log appenders. The artifact is available at |
| 37 | + coordinates `io.opentelemetry:opentelemetry-api-logs:1.19.0-alpha`. |
| 38 | + |
| 39 | +### SDK |
| 40 | + |
| 41 | +#### Metrics |
| 42 | + |
| 43 | +* Change exponential histogram bucket boundaries to be lower exclusive / upper inclusive, instead of |
| 44 | + lower inclusive / upper exclusive. |
| 45 | + |
| 46 | +#### Logs |
| 47 | + |
| 48 | +* BREAKING: Rename `SdkLogEmitterProvider` to `SdkLoggerProvider`. |
| 49 | + `OpenTelemetrySdkBuilder#setLogEmitterProvider` has changed |
| 50 | + to `OpenTelemetrySdkBuilder#setLoggerProvider`. `OpenTelemetrySdk#getSdkLogEmitterProvider` has |
| 51 | + changed to `OpenTelemetrySdk#getSdkLoggerProvider`. |
| 52 | + `AutoConfigurationCustomizer#addLogEmitterProviderCustomizer` has changed |
| 53 | + to `AutoConfigurationCustomizer#addLoggerProviderCustomizer`. |
| 54 | +* BREAKING: Rename `LogEmitter` to `Logger`. |
| 55 | +* BREAKING: Rename `LogExporter` to `LogRecordExporter`. `SystemOutLogExporter` has changed |
| 56 | + to `SystemOutLogRecordExporter`. `OtlpJsonLoggingLogExporter` has changed |
| 57 | + to `OtlpJsonLoggingLogRecordExporter`. `OtlpHttpLogExporter` has changed |
| 58 | + to `OtlpHttpLogRecordExporter`. `OtlpGrpcLogExporter` has changed to `OtlpGrpcLogRecordExporter`. |
| 59 | + `InMemoryLogExporter` has changed to `InMemoryLogRecordExporter`. |
| 60 | + ConfigurableLogExporterProvider` has changed to `ConfigurableLogRecordExporterProvider`. |
| 61 | +* BREAKING: Rename `LogData` to `LogRecordData`. `TestLogData` has changed to `TestLogRecordData`. |
| 62 | +* BREAKING: Rename `LogProcessor` to `LogRecordProcessor`. `BatchLogProcessor` has changed |
| 63 | + to `BatchLogRecordProcessor`. `SimpleLogProcessor` has changed to `SimpleLogRecordProcessor`. |
| 64 | + |
| 65 | +#### Exporter |
| 66 | + |
| 67 | +* OTLP log record exporters now |
| 68 | + include [dropped_attributes_count](https://github.com/open-telemetry/opentelemetry-proto/blob/main/opentelemetry/proto/logs/v1/logs.proto#L157). |
| 69 | + |
| 70 | +#### SDK Extensions |
| 71 | + |
| 72 | +* Autoconfigure now supports an option to disable the SDK. If `otel.sdk.disabled=true`, |
| 73 | + `AutoConfiguredOpenTelemetrySdk#getOpenTelemetrySdk()` returns a minimal (but not |
| 74 | + noop) `OpenTelemetrySdk` with noop tracing, metric and logging providers. The same minimal |
| 75 | + instance is set to `GlobalOpenTelemetry`. The now deprecated |
| 76 | + property `otel.experimental.sdk.enabled` will continue to work in the same way during a transition |
| 77 | + period. |
| 78 | +* Fix `ProcessResource` directory separator to use `/` or `\` instead of `:` or `;`. |
| 79 | +* DEPRECATION: the `opentelemetry-sdk-extension-resource` module containing |
| 80 | + various `ResourceProvider` implementations has been deprecated for removal in next major version. |
| 81 | + A copy of the code will instead be maintained |
| 82 | + in [opentelemetry-java-instrumentation/instrumentation/resources/library](https://github.com/open-telemetry/opentelemetry-java-instrumentation/tree/main/instrumentation/resources/library) |
| 83 | + and published under |
| 84 | + coordinates `io.opentelemetry.instrumentation:opentelemetry-resources:{version}`. |
| 85 | +* DEPRECATION: the `opentelemetry-sdk-extension-aws` module containing AWS `ResourceProvider` |
| 86 | + implementations has been deprecated for removal in next major version. A copy of the code will |
| 87 | + instead be maintained |
| 88 | + in [opentelemetry-java-contrib/aws-resources](https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/aws-resources) |
| 89 | + and published under coordinates `io.opentelemetry.contrib:opentelemetry-aws-resources:{version}`. |
| 90 | + |
| 91 | +### OpenTracing Shim |
| 92 | + |
| 93 | +* Fully support Baggage-only propagation. |
| 94 | + |
| 95 | +### Semantic conventions |
| 96 | + |
| 97 | +* The semantic conventions have been updated to 1.13.0. |
9 | 98 |
|
10 | 99 | ## Version 1.18.0 (2022-09-09)
|
11 | 100 |
|
|
0 commit comments