Skip to content

Version 1.1.0

Compare
Choose a tag to compare
@anuraaga anuraaga released this 07 Apr 04:49
· 2254 commits to main since this release
768bde8

API

Bugfixes

  • We now use our own internal @GuardedBy annotation for errorprone so there won't be an accidental
    transitive dependency on a 3rd-party jar.
  • The TraceStateBuilder now will not crash when an empty value is provided.

Enhancements

  • The Context class now provides methods to wrap java.util.concurrent.Executor and java.util.concurrent.ExecutorService
    instances to do context propagation using the current context. See io.opentelemetry.context.Context.taskWrapping(...) for
    more details.

OpenTracing Shim (alpha)

  • The shim now supports methods that take a timestamp as a parameter.
  • You can now specify both the TEXT_MAP and the HTTP_HEADER type propagators for the shim.
    See io.opentelemetry.opentracingshim.OpenTracingPropagators for details.

Extensions

  • The AWS X-Ray propagator is now able to extract 64-bit trace ids.

SDK

Bugfixes

  • The CompletableResultCode.join(long timeout, TimeUnit unit) method will no longer fail the result
    when the timeout happens. Nor will whenComplete actions be executed in that case.
  • The SimpleSpanProcessor now keeps track of pending export calls and will wait for them to complete
    via a CompletableResultCode when forceFlush() is called. Similiarly, this is also done on shutdown().
  • The Jaeger Thrift exporter now correctly populates the parent span id into the exporter span.

Enhancements

  • The SpanBuilder provided by the SDK will now ignore Link entries that are reference an invalid SpanContext.
    This is an update from the OpenTelemetry Specification v1.1.0 release.
  • The OTLP Exporters will now log more helpful messages when the collector is unavailable or misconfigured.
  • The internals of the BatchSpanProcessor have had some optimization done on them, to reduce CPU
    usage under load.
  • The Resource class now has builder() and toBuilder() methods and a corresponding ResourceBuilder class
    has been introduced for more fluent creation and modification of Resource instances.
  • The standard exporters will now throttle error logging when export errors are too frequent. If more than 5
    error messages are logged in a single minute by an exporter, logging will be throttled down to only a single
    log message per minute.

SDK Extensions

Bugfixes

  • Removed a stacktrace on startup when using the autoconfigure module without a metrics SDK on the classpath.

Enhancements

  • The autoconfigure module now supports OTEL_EXPORTER_OTLP_METRICS_ENDPOINT and OTEL_EXPORTER_OTLP_TRACES_ENDPOINT
    settings, in addition to the combined OTEL_EXPORTER_OTLP_ENDPOINT environment variable. Corresponding
    system properties are also supported (-Dotel.exporter.otlp.metrics.endpoint and -Dotel.exporter.otlp.traces.endpoint).
  • An SdkMeterProviderConfigurer SPI is now available in the autoconfigure module.

Semantic Conventions (alpha)

  • The SemanticAttributes and ResourceAttributes have both been updated to match the OpenTelemetry Specification v1.1.0 release.
    This includes a breaking changes to the constants defined in the ResourceAttributes class:
    ResourceAttributes.CLOUD_ZONE has been replaced with ResourceAttributes.CLOUD_AVAILABILITY_ZONE.

Metrics (alpha)

Breaking Changes

  • The ViewRegistry now lets you register View objects, rather than AggregatorFactory instances.
  • GlobalMetricsProvider has been renamed to GlobalMeterProvider.
  • View registration has been moved to the SdkMeterProviderBuilder and the methods on the SdkMeterProvider
    to add views have been deprecated. They will be removed in the next release.

Enhancements

  • A new option for aggregation as Histograms is now available.

Many thanks to all the people who contributed to this release:

@anuraaga @jkwatson @jack-berg @Oberon00 @beanliu @malafeev @sbandadd @breedx-splk @as-polyakov @kubawach @austinlparker @harshita19244 @mateuszrzeszutek @piotr-sumo @topher1120