Skip to content

Version 1.8.0

Latest

Choose a tag to compare

@github-actions github-actions released this 22 Oct 22:00
1cfa91a

This release is based on OpenTelemetry Java Instrumentation 2.32.0 and
the OpenTelemetry Java Core (sdk/api/exporters) 1.66.0.

Note that many artifacts have the -alpha suffix attached to their version number, reflecting
that they are still alpha quality and will continue to have breaking changes. Please see the
VERSIONING.md for more details.

📣 Migration notes

  • SDK initialization events are now disabled by default. Call enableSdkInitializationEvents() to keep emitting them. (#2109, #2108)

  • Session ID lookups no longer refresh background inactivity, so background telemetry no longer keeps a session alive. First lookup and expiry still create a session. User activity recording is internal and is not yet connected to user activity sources. (#2078, #2049)

  • A reminder that non-stable instrumentation names are subject to change. In this release, java crash instrumentation has been renamed to java-crash. This aligns naming with native-crash while providing a clearer distinction. (#2103)

🌟 New instrumentation

  • Add OpenTelemetry context propagation to CoroutineScope.launch calls in application classes transformed by ByteBuddy. Other coroutine builders, including async and withContext, are not covered. See the installation instructions for the required ByteBuddy setup. (#1935)

📈 Enhancements

  • Native crash state recovery now replays captured stack frames and uses validated, per-launch recovery state with at-most-once delivery claims. (#2032, #2050, #2081, #2091, #2051, #2052)

  • Disk buffering is now configurable through the Android Agent DSL, including its export period, storage location, and maximum cache size. (#2047)

  • The Android Agent DSL can now replace or remove attributes in the default resource and customize or replace propagators. (#2080, #2083)

  • Add dynamic export headers with headerSupplier { ... } in the Agent DSL. Supplied values are refreshed for traces, logs, and metrics and take precedence over conflicting static values. (#2101)

  • The Android Agent DSL can filter HTTP client spans by host before export with shouldRecordSpanForHost { ... }. The predicate receives the lowercased host; all matching spans are recorded when no predicate is configured. This can help mitigate unwanted telemetry for 3rd-party analytics services. (#2074, #1686)

  • Session storage can be customized through the DSL, and storage can provide previous-session context to link a new session's start event to the prior session. The default storage remains in-memory. (#2061, #2126)

  • Configure a trace sampler via Agent DSL, including samplers that use the final session provider. (#2096)

  • ANR, crash, Compose click, HttpURLConnection, and Android log instrumentations now support uninstall(). (#2128, #2129, #2133, #2137, #2136)

  • Add the optional agent-api-ktx module with the OpenTelemetryRum.openTelemetryKotlin extension for using the opentelemetry-kotlin API with the agent's existing Java SDK instance. This is recommended only for early adopters and contributors. (#2062)

Bug fixes

  • Fix incorrect log message formatting. (#2125)

🧰 Tooling

  • Fix self-repository references in CI, document the Java 21 build requirement, and update Renovate settings. (#2067, #2079, #2118)

🙇 Thank you

This release was possible thanks to the following contributors:

@aranhave
@atulgpt17
@benjoseph-grafana
@bidetofevil
@breedx-splk
@codecov
@copilot-pull-request-reviewer
@DavidGrath
@fractalwrench
@insaneodyssey26
@LikeTheSalad
@mamjong
@RotBolt
@SimonMarquis
@Yash990-bit