* 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
Primary goal is to maintain a simple and semantic interface for the code using it. See `HttpClientTracerDemonstration` for example usage.
* Add additional startSpan methods and restructure to allow tracer.extract at build time.
* Move classes into a different package structure to enable less visibility.
And move setter method to tracer.
* Add deprecation warnings to unused end methods
* 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.
Specifically, this allows annotated/configured methods to be reported to App Analytics:
- System Property: `-Ddd.trace-annotation.analytics.enabled=true`
- Environment Variable: `DD_TRACE_ANNOTATION_ANALYTICS_ENABLED=true`
or
- System Property: `-Ddd.trace-config.analytics.enabled=true`
- Environment Variable: `DD_TRACE_CONFIG_ANALYTICS_ENABLED=true`
* 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