opentelemetry-java-instrumentation

OpenTelemetry auto-instrumentation and instrumentation libraries for Java

APACHE-2.0 License

Stars
1.9K

Bot releases are visible (Hide)

opentelemetry-java-instrumentation - Version 1.14.0

Published by github-actions[bot] over 2 years ago

This release targets the OpenTelemetry SDK 1.14.0.

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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:

  • The opentelemetry-log4j-appender-2.16 artifact has been renamed to opentelemetry-log4j-appender-2.17
  • The opentelemetry-log4j-context-data-2.16-autoconfigure artifact has been renamed to opentelemetry-log4j-context-data-2.17-autoconfigure
  • Micrometer library instrumentation has been removed as it has been moved to the core repo and is now published under io.opentelemetry:opentelemetry-micrometer1-shim
  • The rxjava javaagent instrumentation names for suppression have changed to rxjava
  • AgentListener#beforeAgent() has been deprecated, as it is not expect to be needed by extensions authors
  • ConfigPropertySource has been deprecated in favor of ConfigCustomizer
  • Several changes in the Instrumentation API - RequestMetrics has been renamed to OperationMetrics - RequestListener has been renamed to OperationListener - ErrorCauseExtractor#extractCause() has been renamed to extract() - ContextCustomizer and RequestListener start()/end() methods have been renamed to onStart()/onEnd()
  • The opentelemetry-javaagent-instrumentation-api artifact has been merged into the opentelemetry-javaagent-extension-api artifact

🌟 New javaagent instrumentation

  • Add jboss-logmanager mdc support (#5842)
  • Spring-kafka single record instrumentation (#5904)
  • Add metrics instrumentation for grpc (#5923)
  • Add vertx-kafka-client instrumentation (#5973, #5982)
  • Hide the GC runtime metrics behind an experimental config flag (#5990)
  • Add HikariCP connection pool metrics (#6003)

🌟 New library instrumentation

  • Add metrics instrumentation for grpc (#5923)
  • Add HikariCP library instrumentation (#6023)

πŸ“ˆ Enhancements

  • Enable span suppression by SpanKey by default (#5779)
  • record exception in dubbo high version (#5892)
  • Introduce LocalRootSpan (replacing ServerSpan) (#5896)
  • Add javaagent<->application context bridge for HttpRouteHolder (#5838)
  • Exclude spring temporary type matching class loader (#5912)
  • Load agent classes child first (#5950)
  • Avoid looking up annotation types during type matching (#5906)
  • Add an SPI for customizing Config just before it's set (#6010)

πŸ› οΈ Bug fixes

  • Fix duplicate class error on Android build (#5882)
  • Avoid npe in netty 4.1 instrumentation (#5902)
  • Fix logging exporter autoconfiguration issue (#5928)
  • fix NPE for commons-httpclient v3.1 (#5949)
  • Exclude duplicate project classes from inst/ (#5957)
  • Ignore known problematic jdbc wrappers (#5967)
  • Fix default enabled for runtime and oshi metrics (#5989)
  • Mitigate against another kafka leak (#6021)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@anuraaga
@breedx-splk
@chenjazz
@chronosa
@cuichenli
@dgradecak
@Enkelian
@HughPowell
@iNikem
@IraSkyx
@jack-berg
@jprinet
@kelystor
@laurit
@mateuszrzeszutek
@pkgonan
@shreya22-1998
@trask
@tydhot
@wallezhang

opentelemetry-java-instrumentation - Version 1.13.1

Published by github-actions[bot] over 2 years ago

This is a patch release on the previous 1.13.0 release, fixing the issue(s) below.

πŸ› οΈ Bug fixes

  • Fix duplicate class error on Android build (#5882)
  • Fix spring-kafka single record instrumentation (#5904)
opentelemetry-java-instrumentation - Version 1.13.0

Published by github-actions[bot] over 2 years ago

This release targets the OpenTelemetry SDK 1.13.0.

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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

  • Micrometer instrumentation is now automatically applied to spring-boot-actuator apps
  • Some configuration properties have been renamed:
    • otel.instrumentation.common.experimental.suppress-controller-spans -> otel.instrumentation.common.experimental.controller-telemetry.enabled (important: note that the meaning is inverted)
    • otel.instrumentation.common.experimental.suppress-view-spans -> otel.instrumentation.common.experimental.view-telemetry.enabled (important: note that the meaning is inverted)
    • otel.instrumentation.netty.always-create-connect-span -> otel.instrumentation.netty.connection-telemetry.enabled
    • otel.instrumentation.reactor-netty.always-create-connect-span -> otel.instrumentation.reactor-netty.connection-telemetry.enabled
  • Runtime memory metric names were updated to reflect semantic conventions
  • Micrometer library instrumentation has been deprecated as it has been moved to the core repo and is now published under io.opentelemetry:opentelemetry-micrometer1-shim
  • Library instrumentation entry points have been renamed from *Tracing to *Telemetry

🌟 New javaagent instrumentation

  • GraphQL (#5583)
  • JBoss Log Manager (#5737)
  • Apache HttpClient 5.x async client (#5697)

🌟 New library instrumentation

  • GraphQL (#5583)
  • Ktor 2 (#5797)

πŸ“ˆ Enhancements

  • Elasticsearch rest client low cardinality span names (#5584)
  • Implement "Prometheus mode" for better micrometer->OTel->Prometheus support (#5537)
  • Apply micrometer instrumentation to spring-boot-actuator apps (#5666)
  • Sql sanitizer: handle double quoted table names (#5699)
  • Spring Boot Starter service-name is constant (#5359)
  • Update runtime memory metrics to reflect semantic conventions (#5718)
  • change rpc type in apache dubbo (#5432)
  • Rework context propagation to redisson async callback (#5748)
  • Resolve end strategy after WithSpan method instead of before. (#5756)
  • Allow scanning instrumented reactor publishers and only allow registe… (#5755)
  • Faster type matching (#5724)
  • Use UnsynchronizedAppenderBase as base class for our logback appender (#5818)
  • Do not set the http.route attribute in JSF instrumentations (#5819)
  • Use micrometer1-shim in micrometer javaagent instrumentation, deprecate library instrumentation (#5820)
  • Rename netty always-create-connect-span property to connection-telemetry (#5834)
  • Update the http.route attribute even for not sampled server spans (#5844)

πŸ› οΈ Bug fixes

  • Fix possible deadlock (#5585)
  • Prevent possible deadlock in downstream distro (#5830)
  • Limit problems from kafka iterator instrumentation thread context leak (#5826)

🧰 Tooling

  • Remove deprecated methods from instrumentation-api and library instrumentations (#5575)
  • Split out RpcAttributesGetter (#5548)
  • Run tests with jdk17 (#5598)
  • Split out MessagingAttributesGetter (#5626)
  • Run Gradle and compile code with Java 17 (#5623)
  • Rename library entrypoints to Telemetry (#5624)
  • Add InstrumenterBuilder.addRequestListener (#5655)
  • Simplify HttpUrlConnection instrumentation (#5673)
  • Convert all logging statements from slf4j to jul (#5674)
  • Allows passing an OpenTelemetry instance to registerObservers() methods. (#5716)
  • Make it possible to register multiple helper resources under the same… (#5703)
  • Split out instrumentation-api-semconv (#5721)
  • Move ClassNames & SpanNames to .util package (#5746)
  • Library instrumentation should read its version from a file (#5692)
  • Rename view and controller suppression config properties (#5747)
  • Deprecate AttributesExtractor#set() method (#5749)
  • Cleanup Config & ConfigBuilder API (#5733)
  • Instrumenter instrumentation version and schema url (#5752)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@anuraaga
@anuragagarwal561994
@aschugunov
@breedx-splk
@cartermp
@cbos
@chalin
@chenjazz
@cuichenli
@f00b455
@gquintana
@ianmcorvidae
@iNikem
@irizzant
@jack-berg
@jenarros
@jiwen624
@jkwatson
@jord1e
@jprinet
@laurit
@mateuszrzeszutek
@neiser
@pavolloffay
@theletterf
@trask
@tydhot
@wallezhang
@zoranzaric

opentelemetry-java-instrumentation - Version 1.12.1

Published by trask over 2 years ago

This is a patch release on the previous 1.12.0 release, fixing the issues below.

πŸ› οΈ Bug fixes

  • Elasticsearch rest client low cardinality span name (#5584)
  • Fix possible deadlock (#5585)
opentelemetry-java-instrumentation - Version 1.12.0

Published by github-actions[bot] over 2 years ago

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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.

🌟 New javaagent instrumentation

  • Add Azure SDK instrumentation (#5467)

πŸ“ˆ Enhancements

  • Use repository interface name in spring data operation name (#5352)
  • Change the way Micrometer LongTaskTimer is bridged (#5338)
  • Updates to http.server_name (#5369)
  • Support forwarded proto field and x-forwarded-proto (#5357)
  • Remove server span peer name (#5404)
  • Add peer service support back to couchbase26 (#5451)
  • Remove duplicative JAXRS HttpClient instrumentation (#5430)
  • Add experimental thread attributes for logs (#5474)
  • Add log4j 1.2 appender MDC capture (#5475)
  • Capture logback formatted message (#5497)
  • Add JBoss java.util.logging support (#5498)
  • Disable the messaging receive span telemetry by default (#5500)
  • Remove old experimental properties in CapturedHttpHeaders (#5524)
  • Avoid conflicts in Micrometer description mapping (#5452)

πŸ› οΈ Bug fixes

  • Fix another reverse lookup (#5393)
  • Regression in loading the prometheus exporter (#5408)
  • Fix muzzle failure on calls to primitive array clone (#5405)
  • Fix regression in spring-scheduling span name (#5436)
  • Fix android desugaring for HashMap.forEach (#5468)
  • Fix duplicate class definition of ContextDataProvider (#5528)
  • Do not propagate gRPC deadline when propagating OTel context via javaagent (#5543)

🧰 Tooling

  • Split out CodeAttributesGetter (#5342)
  • Add prometheus smoke test (#5417)
  • Set custom gRPC client/server span name extractor (#5244)
  • Split out DbClientAttributesGetter and SqlClientAttributesGetter (#5354)
  • Add builders for setting optional attributes on HTTP extractors (#5347)
  • Write http server tests in java (#5501)
  • Deprecate CapturedHttpHeaders and replace it with builder methods (#5533)
  • Update to Groovy 4 (#5532)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@amitgud-doordash
@anuraaga
@arminru
@BodySplash
@chalin
@domyway
@eugeniyk
@fstab
@iNikem
@irizzant
@kdombeck
@landrunner
@laurit
@lmolkova
@mateuszrzeszutek
@pleeplop
@ryandens
@Stephan202
@trask
@udaysrinivasan

opentelemetry-java-instrumentation - Version 1.11.1

Published by github-actions[bot] over 2 years ago

This is a patch release on the previous 1.11.0 release, fixing the issue below. If you are not affected by this, you do not need to update.

πŸ› οΈ Bug fixes

  • Regression in loading the prometheus exporter (#5408)
opentelemetry-java-instrumentation - Version 1.11.0

Published by github-actions[bot] over 2 years ago

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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

  • The previous release (1.10.0) deprecated the entire io.opentelemetry.instrumentation.api.tracer
    package in the instrumentation-api artifact, and the package was removed in this release.
  • The javaagent -slim artifact has been dropped in this release, because the exporters are much
    smaller now and there is no longer a significant size difference between the -slim and default
    artifacts.
  • The opentelemetry-aws-lambda-1.0 has been split into two artifacts
    opentelemetry-aws-lambda-core-1.0 and opentelemetry-aws-lambda-events-2.2.

🌟 New javaagent instrumentation

  • Spring RMI instrumentation (#5033)

🌟 New library instrumentation

  • Ratpack httpclient (#4787)

πŸ“ˆ Enhancements

  • Add http.route to server spans where route was already being captured for span name (#5086, #5240, #5242, #5241, #5239)
  • Use RPC attributes from spec for AWS SDK (#5166)
  • SdkTracerProvider auto closed as separate Context Bean (#5124) (#5125)
  • Support redisson 3.16.8+ (#5201)
  • Support AWS SDK v1 request object subclasses. (#5231)
  • Remove slim artifact (#5251)
  • kotlinx-coroutines-reactor context propagation (#5196)
  • Log a warning whenever GlobalOpenTelemetry.set() is called (#5264)
  • Use http.route in HttpServerMetrics (#5266)
  • Use VirtualField for associating netty listener with wrapper (#5282)
  • Add code attributes to spring-scheduling spans (#5306)
  • Propagate context into redisson async callback (#5313)
  • Add max measurements to Micrometer Timer & DistributionSummary (#5303)
  • Make it possible to configure base time unit used by the Micrometer bridge (#5304)
  • Make HttpClientMetrics report low cardinality metrics (#5319)
  • Implement NamingConvention support in Micrometer bridge (#5328)
  • Add net.peer.name and net.peer.port attributes for grpc client span (#5324)
  • Split lambda instrumentation into core and events (#5326)
  • Add jaeger remote sampler to agent (#5346)
  • Weak cache optimization (#5344)

πŸ› οΈ Bug fixes

  • Several micrometer instrumentation fixes (#5118)
  • Fix serialisation exception on default lambda events (#4724)
  • NoSuchMethodError when using agent and modules (JPMS) (#5169)
  • Spring boot cloud gateway, context propagation broken (#5188)
  • Akka http server span names are always akka.request #3478 (#5150)
  • Recover from duplicate class definition errors (#5185)
  • Fix serialization for quartz JobExecutionContext (#5263)
  • End jedis span when operation actually ends (#5256)
  • Enable oshi ProcessMetrics in javaagent (#5281)
  • Add missing return type matchers to the executor instrumentation (#5294)
  • Fix triggering of DNS lookup (#5297)
  • Avoid potential for reverse name lookup (#5305)
  • Fix WeakConcurrentMap memory leak (#5316)
  • AWS Lambda instrumentation requires jackson and lambda-events on the classpath (#5326)

🧰 Tooling

  • Convert InstrumentationTestRunner from interface to abstract class (#5112)
  • Parameterize VirtualField field type (#5165)
  • Remove old TraceUtils and use InstrumentationTestRunner#run*Span() (almost) everywhere (#5160)
  • Remove deprecated tracer API (#5175)
  • Remove HttpServerTest#extraAttributes() method (#5176)
  • Rename ServerSpanNaming to HttpRouteHolder (#5211)
  • Don't run testLatestDeps on alpha/beta/rc versions (#5258)
  • Refactor HTTP attributes extractors to use composition over inheritance (#5030, #5194, #5267)
  • Refactor AttributesExtractor so that it extracts route from Context (#5288)
  • Publish gradle-plugins to Maven Central (#5333)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@acm19
@anuraaga
@Asafb26
@blumamir
@breedx-splk
@domyway
@dynatrace-peterlang
@frommeyerc
@gautam-nutalapati
@gsmirnov-splk
@iNikem
@irizzant
@jack-berg
@jkwatson
@jord1e
@jprinet
@jsalinaspolo
@kubawach
@laurit
@mateuszrzeszutek
@mcmho
@mircea-lemnaru-aera
@mping-exo
@necrolyte2
@ozoz03
@pavolloffay
@pichlermarc
@ralphgj
@Samudraneel24
@trask
@valodzka
@xsmrcek

opentelemetry-java-instrumentation - Version 1.10.1

Published by github-actions[bot] over 2 years ago

This is a patch release on the previous 1.10.0 release, fixing the issues below. If you are not affected by any of these, you do not need to update.

πŸ› οΈ Bug fixes

  • Regression in project reactor context propagation instrumentation (#5188)
  • Recover from duplicate class definition errors (#5185)
  • StringIndexOutOfBoundsException in AWS SDK v1 when using request object subclass (#5231)
  • Update to OTel SDK 1.10.1 (#5218)
opentelemetry-java-instrumentation - Version 1.10.0

Published by trask almost 3 years ago

This release deprecates the entire io.opentelemetry.instrumentation.api.tracer package in the instrumentation-api artifact, and the package will be removed in the next release.

The new Micrometer instrumentation will now capture metrics already defined in instrumented applications (e.g. some libraries have built-in micrometer metrics, like spring boot for example) and send them out through the agent metrics pipeline.

This release requires the use of OpenTelemetry Java SDK 1.10.0.

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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

  • The opentelemetry-log4j-2.13.2 artifact has been renamed to opentelemetry-context-data-2.16-autoconfigure
  • The opentelemetry-logback-1.0 artifact has been renamed to opentelemetry-logback-mdc-1.0
  • The opentelemetry-ratpack-1.4 artifact has been renamed to opentelemetry-ratpack-1.7
    and only supports Ratpack 1.7 and above now

🌟 New javaagent instrumentation

  • Logback appender instrumentation to send logs through the OpenTelemetry logging pipeline (#4939, #4968)
  • Log4j 2.x appender instrumentation to send logs through the OpenTelemetry logging pipeline (#4944, #4959, #4966)
  • Log4j 1.2 appender instrumentation to send logs through the OpenTelemetry logging pipeline (#4943)
  • java.util.logging instrumentation to send logs through the OpenTelemetry logging pipeline (#4941)
  • Micrometer instrumentation to send micrometer metrics through the OpenTelemetry metrics pipeline (#4919, #5001, #5017)

🌟 New library instrumentation

  • Logback appender to send logs through the OpenTelemetry logging pipeline (#4984)
  • Log4j 2.x appender to send logs through the OpenTelemetry logging pipeline (#4375, #4907)
  • Ktor instrumentation (#4983)
  • Micrometer instrumentation to send micrometer metrics through the OpenTelemetry metrics pipeline (#5063)

πŸ“ˆ Enhancements

  • Renamed Apache Dubbo and Log4j MDC library artifacts (#4779)
  • Added http4 handler to apache-camel instrumentation (#4650)
  • Capture servlet request parameters (#4703)
  • Propagate Context instead of SpanContext in Kafka instrumentation (#4806)
  • Instrument ContextPropagationOperator to bridge lib/agent calls (#4786)
  • Add shouldStart() call to Armeria server instrumentation (#4843)
  • Capture RPC metrics (#4838)
  • Update log4j library base version (#4914)
  • Rename log4j-thread-context modules to log4j-context-data (#4957)
  • Support latest oshi version (#4993)
  • Support latest RxJava version (#4954)
  • Create producer span from spring integration instrumentation (#4932)
  • Capture servlet request parameters at the end of the request (#5019)
  • Don't extract deprecated cassandra keyspace attribute (#5041)
  • Add OTLP logs exporters (#5060, #5088)
  • End redisson span when the operation actually ends (#5073)
  • Don't capture high-cardinality http.target as metrics attribute (#5081)

πŸ› οΈ Bug fixes

  • Remove virtual field interfaces from reflection results (#4722)
  • Work around jvm crash on early 1.8 (#4345)
  • Fix http.url handing in vert.x 3 http client (#4739)
  • Capture missing RMI spans (#4764)
  • Avoid crashing on early 1.8 openjdk vms (#4789)
  • Fix Quarkus correlation (#4883)
  • Fix RabbitMQ instrumentation consumption on empty headers (#4903)
  • Fix NPE in Apache HttpClient 4.0 instrumentation (#4913)
  • Fix NPE in RocketMQ instrumentation (#4901)
  • Fix time units in HTTP & RPC metrics (#4963)
  • Fix some gauge types (#4962)
  • Fix context propagation for undertow async dispatch (#4950)
  • Fix redefinition failure on openj9 (#5009)
  • Fix NPE in rmi server instrumentation (#5042)

🧰 Tooling

  • Merge start and end time extractors (#4692)
  • Move cache implementations to internal package (#4746)
  • Reorganize shared servlet code (intro to #4317) (#4785)
  • Move AppServerBridge and MappingResolver to servlet-common:bootstrap (#4817)
  • Move ServletContextPath to servlet-common:bootstrap (#4824)
  • Expose AutoConfiguredOpenTelemetrySdk to AgentListener (#4831)
  • Deprecate the Tracer API (#4868)
  • Remove ConfigPropertiesAdapter as it's no longer needed (#4888)
  • Refactor ServerSpanNaming (in preparation for http.route) (#4852)
  • Move SpanKey to internal package (#4869)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@anuraaga
@Asafb26
@breedx-splk
@danhngo-lx
@dengliming
@frommeyerc
@HaloFour
@hellochenpc
@iNikem
@jack-berg
@jamesmoessis
@jkwatson
@jsalinaspolo
@jsuereth
@kubawach
@laurit
@lmolkova
@lokeshcse6
@mateuszrzeszutek
@michaelbannister
@osherv
@previousdeveloper
@ralphgj
@raptium
@rkolesnev
@Samudraneel24
@sh777
@shivanshu1333
@theletterf
@tnaroska
@tomasol
@trask
@yangtaoran
@yonigibbs
@Zane-XY

opentelemetry-java-instrumentation - Version 1.9.2

Published by github-actions[bot] almost 3 years ago

This is a patch release on the previous 1.9.1 release, fixing the issue below. If you are not affected by this, you do not need to update.

πŸ› οΈ Bug fixes

  • Fix reactor-netty memory/connection leak (#4867)
opentelemetry-java-instrumentation - Version 1.9.1

Published by github-actions[bot] almost 3 years ago

This is a patch release on the previous 1.9.0 release, fixing the issue below. If you are not affected by this, you do not need to update.

πŸ› οΈ Bug fixes

  • Shade class references within AWS SDK service files (#4752)
opentelemetry-java-instrumentation - Version 1.9.0

Published by github-actions[bot] almost 3 years ago

This release requires the use of OpenTelemetry Java SDK 1.9.0.

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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.

πŸ“ˆ Enhancements

  • Don't report 400 level as error for SERVER spans (#4403)
  • Netty instrumentation now captures http.scheme (#4446, #4576)
  • Stabilize HTTP headers capturing configuration property names (#4459)
  • Add metrics to remaining http instrumentation (#4541)
  • Remove hibernate session spans (#4538)
  • Support Jedis 4 (#4555)
  • Trace DNS resolution in Netty 4.1 and reactor-netty (#4587, #4627)
  • Update garbage collector instruments to be async counters (#4600)
  • Update HTTP metrics view to match the specification (#4556)
  • Improve Spring Integration interceptor ordering (#4602)
  • Support Restlet 2.0 (#4535)
  • Improved capture of couchbase queries (#4615)
  • Trace SSL handshakes in netty 4.0 and 4.1 (#4635, #4604)
  • Capture exception on finatra controller spans (#4669)
  • Capture exception on async servlet spans (#4677)
  • Automatic AWS library instrumentor (#4607)
  • Support spring boot 2.6.0 (#4687)

πŸ› οΈ Bug fixes

  • Preserve caught netty exception in the context instead of calling end () (#4413)
  • Extract net attributes both on start and on end in netty HTTP client (#4420)
  • Capture metric dimensions from end attributes also (#4430)
  • Avoid logging servlet3 muzzle failure when running on servlet2 (#4474)
  • Fix JettyHttpClient9TracingInterceptor NullPointerException (#4527)
  • Fix context propagation in tomcat thread pool (#4521)
  • Add missing java.util.logging.Logger methods to PatchLogger (#4540)
  • Fix ClassCircularityError when running with security manager (#4557)
  • Fix sun.misc.Unsafe generation on Java 17 (#4558)
  • Fix IndexOutOfBounds in apache http clients (#4575)
  • Fix RMI instrumentation on Java 17 (#4577)
  • Fix Spring Integration instrumentation name (#4601)
  • Capture instrumentation version provided by application tracer correctly when using agent (#4630)
  • Ensure that netty 4.0 instrumentation is not applied to 4.1 (#4626)
  • Fix muzzle problems happening when netty without SSL is used (#4631)
  • Fix memory leak when using ktor-client-java (#4637)
  • Fix quartz instrumentation name (#4657)
  • Fix Spring Integration context leak (#4673)
  • Fix exemplars (#4678)
  • Fix and enforce Android support (#4671, #4667, #4505)

🧰 Tooling

  • Migrate to Spock 2 (#4458)
  • Rename newBuilder () to builder () (#4475)
  • Sync gradle-plugins version with main project (#4248)
  • Muzzle match only once in each class loader (#4543)
  • Inject helper resources only once (#4573)
  • Improve muzzle check for constructors (#4591)
  • Add version to the InstrumenterBuilder and Instrumenter (#4611)
  • Add a ClassAndMethod class to Instrumentation API (#4619)
  • Implement a dedicated reactor-netty 1.0 instrumentation (#4662)
  • Remove gRPC dependency for export (#4674)
  • Start using Gradle Enterprise instance (#4663)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@alvinhom
@anuraaga
@ben-manes
@breedx-splk
@brunojcm
@bsideup
@castortech
@chenjazz
@chris-pinola-rf
@dboreham
@dengliming
@Enkelian
@HaloFour
@harel-e
@iNikem
@irizzant
@jack-berg
@jkwatson
@jsalinaspolo
@jsuereth
@kubawach
@laurit
@lmolkova
@MartinDai
@mateuszrzeszutek
@michaelbannister
@osherv
@przemekak
@qiansheng91
@radcortez
@runningcode
@shivanshu1333
@steffan-westcott
@steven-aerts
@theletterf
@trask
@zmapleshine

opentelemetry-java-instrumentation - Version 1.7.2

Published by github-actions[bot] almost 3 years ago

This is a patch release on the previous 1.7.1 release, fixing the issues below. If you are not affected by these, you do not need to update.

πŸ› οΈ Bug fixes

  • HTTP exporter does not properly close connections (#4581)
  • IndexOutOfBounds in Apache HTTP client instrumentation (#4575)
  • Exception in certain logging messages (#4540)
  • NPE in Jetty instrumentation (#4527)
opentelemetry-java-instrumentation - Version 1.8.0 (Bad Release)

Published by anuraaga almost 3 years ago

Due to an issue in the publishing infrastructure, a bad release was published as 1.8.0. Do not use it.

opentelemetry-java-instrumentation - Version 1.7.1

Published by github-actions[bot] almost 3 years ago

This is a patch release on the previous 1.7.0 release, fixing the three issues below. If you are not affected by these, you do not need to update.

πŸ› οΈ Bug fixes

  • Java agent 1.7.0 fails with prometheus exporter (#4460)
  • Android regression in okhttp instrumentation in 1.7.0 (#4452)
  • Remove unshaded javax.annotation classes from bootstrap class loader (#4454)
opentelemetry-java-instrumentation - Version 1.7.0

Published by github-actions[bot] about 3 years ago

Note: with this release, the -all artifact has been removed and the default artifact (with no classifier) is now the go-to artifact that contains the exporters. If you want an artifact with no exporters, there is a new -slim artifact that is published to maven central. The -all artifact is still attached to this release below (it has the same content as the default artifact), but will no longer be attached to the releases starting from v1.8.0.

This release requires the use of OpenTelemetry Java SDK 1.7.0.

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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.

πŸ“ˆ Enhancements

  • Change the default javaagent artifact to have exporters, introduce new -slim artifact,
    and deprecate the -all artifact (#4106)
  • Support jlinked images without jdk.unsupported module (#4154, #4124)
  • Added experimental option to suppress messaging receive spans (#4187, #4204)
  • Refine 404 handling in Restlet instrumentation (#4206)
  • Remove dynamo db.name attribute (#4208)
  • Remove capturing http.url in server instrumentation in favor of http.scheme, http.host
    and http.target (#4209)
  • Intern db info to reduce memory consumption (#4263)
  • Better JAX-RS async cancel handling (#4279)
  • Extract HTTP request/response headers as span attributes (#4237, #4309, #4320, #4321, #4328, #4395)
  • Support kafka streams 3 (#4236)
  • AWS lambda - improvements in custom type handling in wrappers, SQS event wrapper added (#4254)
  • Add code attributes to quartz spans (#4332)
  • Collect more attributes from servlet instrumenter (#4356)
  • Allow reactor instrumentation to pick up spans from reactor context (#4159)
  • Hide virtual field accessor interface methods from reflection (#4390)

πŸ› οΈ Bug fixes

  • Fix spring context reload issue (#4051)
  • Remove incorrect lettuce db.statement attribute (#4160)
  • Fix tomcat async spans (#4339)

🧰 Tooling

  • Add start/end time to RequestListener (#4155)
  • Add context customizer hook to Instrumenter API (#4167)
  • Transform lambda classes (#4182)
  • Separate HTTP client/server AttributesExtractors (#4195)
  • Introduce muzzle-specific interface to InstrumentationModule (#4207)
  • Make it possible to use InstrumentationContext (now VirtualField) from library instrumentation (#4218)
  • Add functionality to generate API changes (#4285)
  • Split NetAttributesExtractor into NetClientAttributesExtractor and NetServerAttributesExtractor (#4287)
  • Back VirtualField with a volatile field (#4355)
  • Convert AttributesExtractor to interface (#4363)
  • Rename some *InstrumenterBuilder classes to *InstrumenterFactory (#4391)
  • rename newBuilder() to builder() (#4407)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@alesj
@anuraaga
@aras112
@ben-manes
@breedx-splk
@brunojcm
@dengliming
@Enkelian
@frommeyerc
@GlowingRuby
@HaloFour
@HyunGook-Kim
@iNikem
@jack-berg
@jantekb
@jkwatson
@kubawach
@laurit
@lmolkova
@MartinDai
@mateuszrzeszutek
@michaelbannister
@Oberon00
@pavolloffay
@shivanshu1333
@theletterf
@trask

opentelemetry-java-instrumentation - Version 1.6.2

Published by github-actions[bot] about 3 years ago

This is a patch release on the previous 1.6.0 and 1.6.1 releases, fixing the one issue below that arose during the 1.6.1 patch release.

If you are not affected by this, you do not need to update.

πŸ› οΈ Bug fixes

  • The 1.6.1 patch release was not backwards compatible with javaagent extensions built against 1.6.0 (#4245)
opentelemetry-java-instrumentation - Version 1.6.1

Published by github-actions[bot] about 3 years ago


⚠️ There was a problem with this patch release which breaks javaagent extensions if you are using them.


This is a patch release on the previous 1.6.0 release, fixing the one issue below. If you are not affected by this, you do not need to update.

πŸ› οΈ Bug fixes

  • Fix possible JDBC instrumentation deadlock (#4191)
opentelemetry-java-instrumentation - Version 1.6.0

Published by github-actions[bot] about 3 years ago

This release requires the use of OpenTelemetry Java SDK 1.6.0.

Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent 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.

🌟 New javaagent instrumentation

  • Add instrumentation for Quartz 2.0 (#4017)
  • Restlet instrumentation (#3946)

🌟 New library instrumentation

  • Add instrumentation for Quartz 2.0 (#4017)
  • Restlet instrumentation (#3946)

πŸ“ˆ Enhancements

  • Extract Jedis 3 net attributes from InetSocketAddress (#3912)
  • Add option to suppress controller and view spans (#3865)
  • Capture http.user_agent for AsyncHttpClient (#3930)
  • Instrument spring-kafka batch message listeners (#3922)
  • Use unsafe to inject classes to the bootstrap class loader (#4026)
  • Some performance optimizations (#4004, #4006, #4008, #4013, #4014)
  • Do not fallback to net attributes for http.client_ip (#4063)
  • Start a CONSUMER span for Kafka poll() (#4041)
  • Support otlp http exporter (#4068)
  • Better grpc events (#4098)

πŸ› οΈ Bug fixes

  • Bridge span keys defined in instrumentation-api (#3911)
  • Hide generated fields and methods from reflection (#3948)
  • Remove invalid message header (#3958)
  • Fix memleak in the Netty ChannelPipeline instrumentation (#4053)
  • Fix grpc instrumentation of callbacks (#4097)
  • Bridge trace builder (#4090)
  • Remove original handler when removelast in netty (#4123)

🧰 Tooling

  • Deprecate old extensions (#3825)
  • Add request parameter to EndTimeExtractor (#3947)
  • Make Config behave exactly as SDK DefaultConfigProperties (#4035)
  • Fix extension shading (#4064)
  • Add error parameter to EndTimeExtractor and AttributesExtractor#onEnd() (#3988)
  • Allow adding multiple ContextStore fields to one key class (#4067, #4084, #4110)

πŸ™‡ Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

@anuraaga
@arm-chair
@asuresh4
@breedx-splk
@carlosalberto
@dengliming
@dmatscale
@edwardxia
@Enkelian
@evantorrie
@HaloFour
@iNikem
@jack-berg
@jkwatson
@jsuereth
@klboke
@kubawach
@laurit
@lmolkova
@mateuszrzeszutek
@mcmho
@meSunnySrivastava
@michaelbannister
@previousdeveloper
@ryandens
@shivanshu1333
@trask
@tydhot
@willarmiros
@zhq734
@zmapleshine

opentelemetry-java-instrumentation - Version 1.5.3

Published by github-actions[bot] about 3 years ago

This release requires the use of OpenTelemetry Java SDK 1.5.0.

This is a patch release on the previous 1.5.x releases, fixing the one issue below. If you are not affected by this, you do not need to update.

πŸ› οΈ Bug fixes

  • Fix parsing of unclean map values in Config (#4032)