* Update gradle dependencies and module name
* Replace Tracer.withSpan() with currentContextWith()
* Update inject to 0.3.0
* Update extract to 0.3.0
* More updates
* Remove distributedcontext package refs
* Update OpenTelemetry API interoperability
* No need to call setNoParent()
setParent(SpanContext.getInvalid()) should give the same result.
* Better span names for hystrix
* Better span names for finatra
* Better span names for dropwizard-views
* Span name should be route only when available
* Remove resource.name attribute in ratpack
* Remove resource.name attribute in jetty
* Remove resource.name attribute in play
* Span name should be route only when available
* Update dependency version
* Change getTracerFactory to getTracerProvider
* Update some imports
* Change put to set
* Fix up bridge
* Update package names
* Update test SpanProcessor
* Remove null conditionals around setAttribute
* Update shading
* Update span context extraction
* Update HTTP client-side span names
* Add query and fragment to http.url for HTTP client spans
* Add query and fragment to http.url for HTTP server spans
* Update HTTP server span names to be the matched route or resource
* Use net.peer.* instead of peer.* attributes
* Rename hibernate modules
* Update tracer name
* Change from gradle inheritance to composition
This will make it possible to have empty "grouping" modules, e.g.
instrumentation:hibernate.
* Introduce empty hibernate grouping module
* Integrate SpotBugs (FindBugs) into build. Set ignoreFailures so spotted bugs do not break the build.
* Fix many SpotBugs-found items, mostly making things final, but also a redundant null check and a reliance on platform character encoding. 2 items remain which will need further work/review, but as ignoreFailures is set, they will not fail the check stage.
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
Make it clear that this is experimental option, as the specifics of log
capture will definitely change sometime in the future once there is an
agreed on OpenTelemetry spec for this.
Capture logs as spans, to avoid the limitations of current
implementation that captures them as events (no log capture when no
current span, and limited number of events per span).
Change the log instrumentation module names to just reflect the
underlying logger, e.g. "log4j-1.1" instead of "log4j-spans-1.1". This
way we don't end up with an entirely deprecated artifact once the
logging spec is worked out. The spans instrumentation now shares modules
with the MDC instrumentation, which I think is reasonable, as you pick
which one you want via configuration.
* Added service name and corrected span name
* Support peer address for clients
* Added server peer address resolution
* Added constants for new tag names
* Cosmetic change
* Fixed muzzle issue
* Better handling of addresses
* Addressed PR comments
* Made couchbase agent compliant to semantic conventions
* Made tests resilient to variations in internally generated queries
* Fixed test function signatures
* Capture gRPC messages as events
* Rename verification method to avoid conflicts
It's common to have a 'name' test parameter/field which then causes
conflicts with verification method of the same name 'name'.
* Classloader done. Still needs shading
* First working version
* Made the dummy exporter slightly less stupid
* Use SPI pattern for loading. Added runtime shader
* Changed to do shading on binary stream instead of loading the class first
* Protected the runtime shader from having its internals shaded
* Cleaned up code and naming
* Cleaned up
* Cleaned up and fixed test issues
* Minor fixes from code review
* Added exporter smoke tests
* Finalized exporter smoke tests
* Reenabled springboot test
* Fixed some copy-paste issues
* Initial work on exporter bridges
* Implemented dynamically loaded exporter adapters
* Added some more files
* Added exporter-adapters for well-known exporters
Moved dummy-exporter to exporter adapters
Removed -Dota.exporter option in favor of ota.exporter.jar
Added basic exporter tests to smoketest
Increased timeout for Finatra server start to help with parallel test execution
* Cleaned up tests, removed dead code and updated README
* Update README.md
* Update README.md
* Removed references to gRPC dependencies needed by Jaeger
* Fixed incorrect use of ServiceLoader in test
* Fixed test dependencies
* Adjusted exporter tests
* Fixed codeNarc issues
* Fixed CircleCI issues
* Added tests to check what CircleCI is doing
* Added missing logging directory
* Removed deadline() from Jaeger factory
* Another attempt to make it pass CircleCI
* Fixed some minor codeNarc issues
* Wrapped test config in doFirst
* Change forEach -> each
* Removed README section about commercial exporters
* Reduced number of changes to Config
* Fixed field reordering issue
* Removed references to dummy exporter
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
* Remove unused relocation
This relocation is not needed for instrumentation.
* Improve consistency of logs.injection naming
* Fix property based config init
* Capture java.util.logging events
* Fix shading
* Add comment about two part shading
* Rename SpanScopePair to SpanWithScope
* Add closeScope() method and remove getScope()
* Rename spanAndScope parameters to spanWithScope
* A few more renames
* Fix Dropwizard conversion to OpenTelemetry API
* Finish converting JDBC to use OpenTelemetry API directly
* Finish converting Servlet to use OpenTelemetry API directly
* Convert Trace Annotation to use OpenTelemetry API directly
* Convert tests to use OpenTelemetry API directly
* Convert Grizzly to use OpenTelemetry API directly
* Convert Mongo to use OpenTelemetry API directly
* Convert SparkJava to use OpenTelemetry API directly
* Convert Spring Data to use OpenTelemetry API directly
* Convert Jetty to use OpenTelemetry API directly
* Convert JSP to use OpenTelemetry API directly
* Convert Kafka Clients to use OpenTelemetry API directly
* Convert Lettuce to use OpenTelemetry API directly
* Fix gRPC conversion to OpenTelemetry API
* Fix Akka conversion to OpenTelemetry API
* Convert JMS to use OpenTelemetry API directly
* Convert Netty 4.0 to use OpenTelemetry API directly
* Convert Netty 4.1 to use OpenTelemetry API directly
* Convert Play 2.4 to use OpenTelemetry API directly
* Convert Play 2.6 to use OpenTelemetry API directly
* Convert Play WS 1 to use OpenTelemetry API directly
* Convert Play WS 2 to use OpenTelemetry API directly
* Convert Play WS 2.1 to use OpenTelemetry API directly
* Convert RabbitMQ to use OpenTelemetry API directly
* Convert Ratpack to use OpenTelemetry API directly
* Convert RMI to use OpenTelemetry API directly
* Move OpenTelemetry SDK out of bootstrap loader
* Improve shading
After this change, the shaded opentelemetry-sdk is only used by test
modules, so it doesn't need to be published.
* Fix sporadic test failure
* Remove RetryOnFailure from Elasticsearch tests
* Remove retry from Hystrix tests
* Improve test verification
* Fix sporadic span order not found failures
* Add RetryOnFailure to tests with sporadic failures
* Refactor of twilio (WIP)
* Refactored hibernate instrumentation
* Finished refactoring hibernate instrumentation
* Minor changes
* Minor change
* Moved files after upstream restructuring
* Fixed typo and Twilio test issues
* Refactored hibernate tests
* Fixed formatting
* Moved span auto close functionality to SessionState
* Move things up a directory
* Scripted mass update
find -type f -name "*.gradle" | xargs sed -i 's/:java-agent:/:/g'
* Remove plugin version now that it's in root module
* Update java-agent and instrumentation configs
* Misc