* Next attempt to extract common logic from instrumentations.
I tried to reduce code repetition in DB client instrumentations, jdbc and mongo ones. This time I experimented with another approach, different from HttpServerTracer. Namely, I have extracted that common `startSpan` method into `DatabaseClientDecorator` itself. The idea is still the same as before, but I wanted to see if we can migrate by smaller steps, reusing much of the existing code and just incrementally reducing public API.
* Extracted separate Tracer after all
* More explicit call depth handling
* Fix format
* More reusable method overloads
* Fixes#457
* Addressing review comments
1. Added comments in test
2. Fixed latestDepTest failures in MongoAsyncClient by adding `declaresField`
3. Made TracingCommandListener inline in MongoClientAdvice
Co-authored-by: Nikita Salnikov-Tarnovski <gnikem@gmail.com>
* 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.
* 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
* 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
* 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