OpenTelemetry auto-instrumentation and instrumentation libraries for Java
APACHE-2.0 License
Bot releases are hidden (Show)
Published by trask over 2 years ago
This release targets the OpenTelemetry SDK 1.15.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.
opentelemetry-jboss-logmanager-1.1
artifact has been renamed to opentelemetry-jboss-logmanager-appender-1.1
play
to play-mvc
(#6106)vertx-client
to vertx-http-client
(#6106)process.runtime.java.memory.max
has been renamed to process.runtime.java.memory.limit
(#6161)This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@agoallikmaa
@ahus1
@anuraaga
@axelczk
@breedx-splk
@claussenj
@cykl
@darcydai
@evantorrie
@felipebonezi
@HaloFour
@hboutemy
@jack-berg
@jeanbisutti
@laurit
@mateuszrzeszutek
@Roiocam
@trask
@tydhot
@vasireddy99
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
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.
opentelemetry-log4j-2.13.2
artifact has been renamed to opentelemetry-context-data-2.16-autoconfigure
opentelemetry-logback-1.0
artifact has been renamed to opentelemetry-logback-mdc-1.0
opentelemetry-ratpack-1.4
artifact has been renamed to opentelemetry-ratpack-1.7
AppServerBridge
and MappingResolver
to servlet-common:bootstrap
(#4817)ServletContextPath
to servlet-common:bootstrap
(#4824)ServerSpanNaming
(in preparation for http.route
) (#4852)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
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.
Published by trask over 3 years ago
This release requires the use of OpenTelemetry Java SDK 1.2.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.
@WithSpan
async support added for methods returning async Reactor 3.x types (#2714)@WithSpan
async support added for methods returning Guava ListenableFuture (#2811)code.namespace
and code.function
captured on JAX-RS internal spans (#2805)SERVER
span names improved for Spring MVC, Grails, Wicket, and Struts (#2814)SERVER
span names improved for Servlet filters (#2887)SERVER
span names improved for Resteasy (#2900)SERVER
span names improved for Jersey and CXF (#2919)@ApplicationPath
annotation captured as part of SERVER
span name (#2824)forward()
and include()
internal spans removed (#2816)https://username:[email protected]/
no longer captured (#2707)javaagent-tooling
module to implement custom instrumentations: a new javaagent-extension-api
module was introduced, containing all the necessary instrumentation classes and interfaces;InstrumentationModule
and TypeInstrumentation
were moved to the io.opentelemetry.javaagent.extension.instrumentation
package;AgentElementMatchers
, ClassLoaderMatcher
and NameMatchers
were moved to the io.opentelemetry.javaagent.extension.matcher
package;AgentExtension
was introduced: it replaces ByteBuddyAgentCustomizer
;InstrumentationModule#getOrder()
was renamed to order()
;InstrumentationModule#additionalHelperClassNames()
has been removed; use isHelperClass(String)
instead if you use the muzzle compile plugin. If you're not using muzzle, you can override getMuzzleHelperClassNames()
directly instead;InstrumentationModule#getAllHelperClassNames()
has been removed; you can call getMuzzleHelperClassNames()
to retrieve all helper class names instead.This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@agoallikmaa
@ankitgaur-cer
@anuraaga
@asarkar
@breedx-splk
@denis111
@dkulig
@fuleow
@HaloFour
@Hangzhi
@iNikem
@jguerra
@jkwatson
@kubawach
@laurit
@mateuszrzeszutek
@necrolyte2
@pavolloffay
@pellared
@raptium
@richardstartin
@RSoodAMAT
@ryanrupp
@skoppers
@trask
@tydhot
@tylerbenson
Published by mateuszrzeszutek over 3 years ago
This patch release contains a bug fix fox SQS propagation in apache-camel instrumentation (#2102).
For more details about what has changed since 0.14.0 see release notes for version 0.15.0.
Published by anuraaga over 3 years ago
This update is compatible with the OpenTelemetry Java SDK 0.15.0. Most breaking changes are in the SDK so if you are using library instrumentation and the SDK directly, you may need to update code for initializing the SDK.
main
#2118otel.instrumentation.db-statement-sanitizer.enabled
otel.exporter
-> otel.trace.exporter
/ otel.metrics.exporter
. The new variables only accept a single valueotel.exporter.otlp.endpoint
now requires a scheme of http://
or https://
. otel.exporter.otlp.insecure
has been removedotel.bsp.max.queue
-> otel.bsp.max.queue.size
otel.bsp.max.export.batch
-> otel.bsp.max.export.batch.size
otel.bsp.export.sampled
has been removed. Only sampled spans are exportedotel.config.sampler.probability
-> otel.trace.sampler=parentbased_traceidratio
and otel.trace.sampler.arg=<probability>
otel.config.max.attrs
-> otel.span.attribute.count.limit
otel.config.max.events
-> otel.span.event.count.limit
otel.config.max.links
-> otel.span.link.count.limit
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@ben-childs-docusign
@breedx-splk
@iNikem
@jkwatson
@kubawach
@laurit
@malafeev
@mateuszrzeszutek
@pavolloffay
@trask
@vovencij
Published by anuraaga over 3 years ago
This update is compatible with the OpenTelemetry Java SDK 0.14.1. Most breaking changes are in the SDK so if you are using library instrumentation and the SDK directly, you may need to update code for initializing the SDK.
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@amanbrar1999
@anuraaga
@avpatel257
@bhautikpip
@breedx-splk
@iNikem
@jkwatson
@kubawach
@laurit
@malafeev
@mateuszrzeszutek
@pavolloffay
@tobias-
@trask
@vovencij
Published by anuraaga almost 4 years ago
This update is compatible with the OpenTelemetry Java SDK 0.13.1. Most breaking changes are in the SDK so if you are using library instrumentation and the SDK directly, you may need to update code for initializing the SDK.
SimpleAsyncTaskExecutor
#1897jaeger-thrift
#1868Flag guards are per instrumentation
otel.instrumentation.hystrix.experimental-span-attributes
otel.instrumentation.kafka.experimental-span-attributes
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@breedx-splk
@iNikem
@laurit
@mateuszrzeszutek
@pavolloffay
@trask
@vovencij
Published by anuraaga almost 4 years ago
This update is compatible with the OpenTelemetry Java SDK 0.12.0. Most breaking changes in its API are API-compatible if you recompile your app.
NB: The snapshots repository has been moved to Sonatype OSS (https://oss.sonatype.org/content/repositories/snapshots/)
WithSpan
will not produce nested server or client spans anymore #1801Resource
extensions for process and runtime are enabled automatically #1809servlet.context
span attribute is not set anymore #1783
Some configuration properties have been renamed #1786
otel.instrumentation.executors.includeAll --> otel.instrumentation.executors.include-all
otel.hystrix.tags.enabled --> otel.instrumentation.hystrix.tags
otel.kafka.client.propagation.enabled --> otel.instrumentation.kafka.client-propagation
otel.instrumentation.defaultEnabled --> otel.instrumentation.default-enabled
Instrumentation affected: apache-camel, couchbase, grpc, jaxrs, kafka-clients, lettuce, rabbitmq, spring
exporter
instead of exporters
in artifact name, e.g., opentelemetry-javaagent-exporter-zipkin
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@iNikem
@mateuszrzeszutek
@trask
@vovencij
Published by anuraaga almost 4 years ago
This update is compatible with the OpenTelemetry Java SDK 0.11.0.
NB! That release contains A LOT OF breaking changes related to builders, please read its change log carefully!
Filter
instrumented directly instead of FilterChain
#1606b3multi
flag #1647InstrumentationModule
interface #1528otel.trace.enabled --> otel.javaagent.enabled
otel.trace.debug --> otel.javaagent.debug
otel.trace.config --> otel.javaagent.config
otel.trace.runtime.context.field.injection --> otel.javaagent.runtime.context.field.injection
otel.instrumentations.enabled --> otel.instrumentations.default-enabled
otel.trace.classes.excludes --> otel.javaagent.exclude-classes
###🙇 Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@agoallikmaa
@anuraaga
@daviddenton
@hasanfd
@holyjak
@iNikem
@jkwatson
@jamal
@jamesylgan
@jyemin
@kubawach
@malafeev
@mateuszrzeszutek
@mrcull
@pavolloffay
@snyder114
@TeeVenDick
@trask
@vovencij
Published by iNikem almost 4 years ago
This update is compatible with the OpenTelemetry Java SDK 0.10.0.
NB! That release contains A LOT OF breaking changes, please read its change log carefully!
LoggingExporter
now uses the agent's logging framework instead of standard out (#1447)db.name
span attribute for MongoDB (#1419 )HttpURLConnection
instrumentation on WebLogic (#1439)net.peer.*
semantic attributes for Cassandra 4.+ (#1482)Published by anuraaga almost 4 years ago
NB! This release contains several critical bugs and SHOULD NOT be used. Please use version 0.10.1
Published by anuraaga about 4 years ago
This update is compatible with the OpenTelemetry Java SDK 0.9.1
AUTH
command #1190otel.exporter
can be set to otlp_span
or otlp_metric
to only enable the span or metric exporter #1253Tracer
abstraction instead of Decorator
#1275io.opentelemetry.instrumentation.opentelemetry-javaagent-spi
artifact, io.opentelemetry.javaagent.spi
package #1187trace.classes.exclude
to otel.trace.classes.exclude
Config
revamped to allow binary repackaging to set default values for config #1243 and the API has been cleaned up #1286, #1254, #1286, #1310auto
to javaagent
in module names #1370AgentSpecification
#1291This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
Published by anuraaga about 4 years ago
This update is compatible with the OpenTelemetry Java SDK 0.8.0
HttpClient
#1121While not new instrumentation, we've also added documentation for our Spring instrumentation - give it a try and let us know how we can improve it! #1035 #1110
Tracer
abstraction instead of Decorator
#893 #918 #922 #1148net.peer
mapped correctly #1158UrlConnection
#1059Resource
#1112WithSpan
works again after fixing compatibility with the SDK #929ClassCastException
not thrown when accessing TracerSDK
directly #931ClassCastException
not thrown on recent Jetty versions #1156null
can be set by instrumentations using InstrumentationContext
even when the context is backed by a map #1177io.opentelemetry:opentelemetry-sdk-extension-auto-config
used by exporter modules has been replaced by io.opentelemetry.instrumentation.auto:opentelemetry-javaagent-tooling
. If you maintain a custom exporter, please migrate to this new module to continue to be recognized by the agent.
io.opentelemetry.instrumentation.auto:opentelemetry-javaagent/opentelemetry-javaagent-bootstrap/opentelemetry-javaagent-tooling
io.opentelemetry.auto
package moved to io.opentelemetry.javaagent
. This affects any command line parameters tooThis release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
Published by iNikem about 4 years ago
Supports OpenTelemetry Java version 0.7.0.
BREAKING CHANGE #760 Rename trace.methods.exclude
to trace.annotated.methods.exclude
BREAKING CHANGE #841 Changed prefixes of all configuration options from ota
to otel
#506 @WithSpan
annotation now supports kind
attribute
#735 MDC support for log4j 2.13.2+
#726 New semantic attribute http.response_content_length
Performance optimisations for instrumenting Clojure applications
#575 Several instrumentations used to update name of the parent span. It is now fixed to correctly do that for SERVER
span
#756 Add support for Armeria server
Support for new exception
span event
#785, #823 Update database semantic convention
#827 More attributes on http server spans
#838 Add support for OtTracerPropagator
and AwsXRayPropagator
#849 Add support for TraceMultiPropagator
README.md updated to reflect current configuration.
Extensive support for manual instrumentation of Spring Boot applications
Published by iNikem over 4 years ago
See Getting Started for setup instructions.
Supports OpenTelemetry Java version 0.6.0.
Multiple modules have been renamed. Please consult new coordinates for published artefacts at Bintray
Published by trask over 4 years ago
See Getting Started for new setup instructions.
Published by trask over 4 years ago
Download opentelemetry-auto-0.3.0.jar
and one of the exporters:
opentelemetry-auto-exporters-jaeger-0.3.0.jar
opentelemetry-auto-exporters-logging-0.3.0.jar
opentelemetry-auto-exporters-otlp-0.3.0.jar
To run with the otlp exporter:
export OTEL_RESOURCE_ATTRIBUTES=service.name=shopping
java -javaagent:path/to/opentelemetry-auto-0.3.0.jar \
-Dota.exporter.jar=path/to/opentelemetry-auto-exporters-otlp-0.3.0.jar \
-Dota.exporter.otlp.endpoint=localhost:55678 \
-jar myapp.jar
To run with the jaeger exporter:
java -javaagent:path/to/opentelemetry-auto-0.3.0.jar \
-Dota.exporter.jar=path/to/opentelemetry-auto-exporters-jaeger-0.3.0.jar \
-Dota.exporter.jaeger.endpoint=localhost:14250 \
-Dota.exporter.jaeger.service.name=shopping \
-jar myapp.jar
To run with the logging exporter:
java -javaagent:path/to/opentelemetry-auto-0.3.0.jar \
-Dota.exporter.jar=path/to/opentelemetry-auto-exporters-logging-0.3.0.jar \
-jar myapp.jar
Published by trask over 4 years ago
Download opentelemetry-auto-0.2.2.jar
and one of the exporters:
opentelemetry-auto-exporters-jaeger-0.2.2.jar
opentelemetry-auto-exporters-logging-0.2.2.jar
opentelemetry-auto-exporters-otlp-0.2.2.jar
To run with the jaeger exporter:
java -javaagent:path/to/opentelemetry-auto-0.2.2.jar \
-Dota.exporter.jar=path/to/opentelemetry-auto-exporters-jaeger-0.2.2.jar \
-Dota.exporter.jaeger.endpoint=localhost:14250 \
-Dota.exporter.jaeger.service.name=shopping \
-jar myapp.jar
To run with the logging exporter:
java -javaagent:path/to/opentelemetry-auto-0.2.2.jar \
-Dota.exporter.jar=path/to/opentelemetry-auto-exporters-logging-0.2.2.jar \
-jar myapp.jar
To run with the otlp exporter:
java -javaagent:path/to/opentelemetry-auto-0.2.2.jar \
-Dota.exporter.jar=path/to/opentelemetry-auto-exporters-otlp-0.2.2.jar \
-Dota.exporter.otlp.endpoint=localhost:55678 \
-jar myapp.jar