Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 1, 2025

This PR contains the following updates:

Package Change Age Confidence
io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom 2.20.1 -> 2.23.0 age confidence

Release Notes

open-telemetry/opentelemetry-java-instrumentation (io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom)

v2.23.0

⚠️ Breaking Changes
  • ActiveMQ Classic JMX metrics: rename attributes and metrics to align
    with semantic conventions (see PR description for specifics)
    (#​14996)
  • Library instrumentation: remove previously deprecated methods from telemetry builders
    (#​15324)
  • Logback: captureArguments no longer captures message template, use captureTemplate
    (#​15423)
  • Play: disable controller spans by default,
    re-enable with otel.instrumentation.common.experimental.controller-telemetry.enabled=true
    (#​15604)
🚫 Deprecations
  • Library instrumentation: deprecate setSpanNameExtractor() and setStatusExtractor()
    in favor of setSpanNameExtractorCustomizer() and setStatusExtractorCustomizer()
    (#​15529)
🌟 New javaagent instrumentation
🌟 New library instrumentation
📈 Enhancements
  • Spring starter: add declarative config logging exporter
    (#​14917)
  • Failsafe: add support for RetryPolicy
    (#​15255,
    #​15537)
  • GraphQL: add option to disable capturing query documents
    (#​15384)
  • JMX metrics: allow any classpath resource path in rules
    (#​15413)
  • Spring Boot actuator autoconfigure: support Spring Boot 4
    (#​15433)
  • Spring JMS: support Spring Boot 4
    (#​15434)
  • Spring starter: support Spring Boot 4
    (#​15459)
  • Lettuce: support custom ClientResources
    (#​15470)
  • Lettuce: add reactor-core compatibility checker
    (#​15472)
  • Servlet: propagate context explicitly for async runnables
    (#​15476)
  • Servlet: always add trace_id and span_id attributes to requests
    (#​15485)
  • Pekko HTTP: separate route instrumentation from HTTP server instrumentation
    (#​15499)
  • MongoDB: emit versioned scope name
    (#​15500)
  • Spring WebFlux: support Spring Boot 4
    (#​15502,
    #​15574)
  • Spring WebMVC: support Spring Boot 4
    (#​15525)
  • Spring Cloud Gateway: support Spring Boot 4
    (#​15540)
  • Spring starter: add missing Kafka configuration options
    (#​15592)
  • OpenTelemetry API interop: support new GlobalOpenTelemetry methods introduced in 1.57
    (#​15620)
🛠️ Bug fixes
  • Spring Web/WebFlux: restore GraalVM native-image compatibility
    (#​15306)
  • Spring Kafka: end span in afterRecord callback
    (#​15367)
  • Spring starter: fix environment variable overrides for array properties in declarative config
    (#​15424)
  • Ktor: prevent double end() calls in KtorServerTelemetry
    (#​15452)
  • OpenTelemetry API interop: fix null handling in ExtendedOpenTelemetry declarative config
    (#​15478)
  • Akka HTTP: fix http.route attribute capture and span naming
    (#​15504)
  • Extensions: fix SPI loading for InstrumenterCustomizerProvider and related classes
    (#​15538)
  • Sanitize sql statements that may contain unquoted passwords
    (#​15607)

v2.22.0

⚠️ Breaking Changes
  • AWS SDK 2.x attributes updated to align with semantic conventions
    (#​15028)
    • The following attributes have been renamed:
      • aws.bucket.name (S3) → aws.s3.bucket
      • aws.queue.url (SQS) → aws.sqs.queue.url
      • aws.stream.name (Kinesis) → aws.kinesis.stream_name
      • aws.table.name (DynamoDB) → aws.dynamodb.table_names
      • aws.dynamodb.provisioned_throughput.read_capacity_unitsaws.dynamodb.provisioned_read_capacity (type changed from long to double)
      • aws.dynamodb.provisioned_throughput.write_capacity_unitsaws.dynamodb.provisioned_write_capacity (type changed from long to double)
      • aws.dynamodb.exclusive_start_table_nameaws.dynamodb.exclusive_start_table
      • aws.dynamodb.projection_expressionaws.dynamodb.projection
      • aws.dynamodb.scan_index_forwardaws.dynamodb.scan_forward
    • The following attribute types have changed:
      • aws.dynamodb.table_names: string → string[]
      • aws.dynamodb.consumed_capacity: string → string[]
      • aws.dynamodb.global_secondary_indexes: string → string[]
      • aws.dynamodb.local_secondary_indexes: string → string[]
      • aws.dynamodb.consistent_read: string → boolean
      • aws.dynamodb.table_count: string → long
      • aws.dynamodb.limit: string → long
      • aws.dynamodb.attributes_to_get: string → string[]
      • aws.dynamodb.segment: string → long
      • aws.dynamodb.total_segments: string → long
      • aws.dynamodb.count: string → long
      • aws.dynamodb.scanned_count: string → long
    • The following attributes are no longer emitted by default but can be enabled with
      otel.instrumentation.aws-sdk.experimental-span-attributes=true:
      • aws.queue.name (SQS)
      • aws.lambda.function.name (Lambda)
      • aws.lambda.function.arn (Lambda)
  • JDBC library data source instrumentation now disabled by default
    (#​15074)
  • JMX state metrics unit changed from empty string to 1 to align with semantic conventions
    (#​15093)
  • AWS SDK 1.x attributes updated to align with semantic conventions
    (#​15094)
    • Only affects users with otel.instrumentation.aws-sdk.experimental-span-attributes=true
    • The following attributes have been renamed and are now emitted by default (no experimental flag required):
      • aws.bucket.name (S3) → aws.s3.bucket
      • aws.queue.url (SQS) → aws.sqs.queue.url
      • aws.stream.name (Kinesis) → aws.kinesis.stream_name
      • aws.table.name (DynamoDB) → aws.dynamodb.table_names
  • Finatra controller spans now disabled by default to match other controller spans
    (#​15118)
  • Netty HTTP request wrapper class renamed from HttpRequestAndChannel to NettyRequest
    (#​15247)
  • JSP compile spans now disabled by default to match other view spans
    (#​15261)
🚫 Deprecations
  • TracingConsumerInterceptor and TracingProducerInterceptor deprecated in favor of new configurable interceptors
    (#​14929)
  • Various builder methods updated to use UnaryOperator instead of Function<X, X>
    (#​15101)
  • DbClientCommonAttributesGetter deprecated in favor of DbClientAttributesGetter
    (#​15139)
🌟 New javaagent instrumentation
📈 Enhancements
  • Avoid Unsafe usage on Java 23+
    (#​14855,
    #​15091)
  • Update Azure SDK instrumentation so az.namespace can be used for sampling
    (#​15068)
  • Spring Boot Starter: Add cache to reduce environment variable lookups
    (#​15132)
  • HTTP instrumentations now emit semantic convention schema URL
    (#​15144)
  • Added instrumentation support for AsyncHttpClient version 1.8
    (#​15195)
  • Instrumenter customizer now receives instrumentation type
    (#​15227)
  • Added support for Spring Framework 7.0
    (#​15287,
    #​15299,
    #​15301,
    #​15304,
    #​15311,
    #​15362,
    #​15371)
  • Added span status customizer to incubating InstrumenterCustomizer API
    (#​15288)
  • Added configuration options for sqlcommenter
    (#​15169)
  • GraphQL instrumentation now records data fetcher errors
    (#​15289)
  • Add http client url template customizer
    (#​15217)
  • Introduce idiomatic JmxTelemetry API for JMX metrics library
    (#​15220)
  • Add instrumentation for OpenTelemetry API incubator's ExtendedOpenTelemetry
    (#​15178)
🛠️ Bug fixes
  • Fix missing peer.service in Netty HTTP spans
    (#​14963)
  • Fix Couchbase span kind to be CLIENT instead of INTERNAL
    (#​14995)
  • Link attributes are now bridged to the Java agent when using OpenTelemetry API
    (#​15143)
  • Potential race condition in JFR runtime metrics initialization fixed
    (#​15231)
  • Regression fixed related to context propagation when using Spring @EnableAsync
    (#​15249)
  • Declarative configuration now uses snake_case for distro resource provider attribute name
    (#​15260)
  • Logback appender fixed to capture Logstash StructuredArguments.entries()
    (#​15341)
  • Fix context propagation in Spring WebFlux 7.0 client reactive callbacks
    (#​15336)

v2.21.0


Configuration

📅 Schedule: Branch creation - "after 10pm" in timezone Europe/Prague, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the type: dependency-upgrade Upgrade a dependency label Dec 1, 2025
@renovate renovate bot changed the title fix(deps): update dependency io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom to v2.22.0 fix(deps): update dependency io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom to v2.23.0 Dec 12, 2025
@renovate renovate bot force-pushed the renovate/io.opentelemetry.instrumentation-opentelemetry-instrumentation-bom-2.x branch from 29730e7 to 6e42448 Compare December 12, 2025 23:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: dependency-upgrade Upgrade a dependency

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant