* add shortcut methods to get tracers and meters
* add shortcut methods to get tracers and meters
* add shortcut methods to get tracers and meters
* add shortcut methods to get tracers and meters
* added jaeger propogator and test
* address PR comments about logging and static var names
* added jaeger client for testing jaeger propagator
* added comment to explain why UTF-8 decoding is needed
* Initial def of string constants for semantic convention span attribute names
* Change to recommended name and update to latest specifications
* Changed constants to objects which enabled typed setting of span attributes
* Sync Javadoc with specifications document.
* Update to latest factory name
* Renaming to make usage clearer
* API improvements and cleanup based on PR comments
* Removed methods required by code reviews
* Made setter classes final
* Initial Propagators refactor.
* Add tests for the new propagators changes.
* Make the SDK compile/pass.
* Make the OT shim compile/pass.
* Make contrib components compile/pass.
* Improvement over Span/SpanContext handling in Context.
* Add Span.setParent(Context) overload.
* Do not provide default values for Span/SpanContext keys in Context.
* Improve the Context's active state handling.
* Rename DistributedContext to CorrelationContext.
* Improve names for correlationcontext's ContextUtils methods.
* Don't provide an automatic default for current CorrelationContext.
* Improve the client-server example after the recent changes.
* Adds CorrelationContext.Builder.setParent(Context) overload.
* s/be/become.
* Fix javadoc.
* No need to use diamond.
* Simply import withScopedContext().
* Fix the API/SDK build.
* Remove the builder from the Propagators interface.
* Fix name.
* Use Collections.emptyList() directly.
* Rename Propagators to ContextPropagators.
* Move context/ members in api/ to context_prop/
* Add check/tests for null scoped Contexts.
* Rename ContextUtils classes to better alternatives.
* Update the context* util classes.
* Make the code compile after the latest master merge.
* Cache the fields() in our default composite propagator.
* Remove the overloads of setParent(Context) for now.
* Use DefaultSpan for the tests instead of calling getTracerProvider()
* Fix the sdk testbed artifact build.
* Make the B3 propagator comply with the new propagator API.
* Simplify the HttpTraceContextTest tests.
* Simplify the ContextUtils* classes handling of default values.
* Minor nit.
* Update api/src/main/java/io/opentelemetry/OpenTelemetry.java
Co-Authored-By: Giovanni Liva <giovanni.liva@dynatrace.com>
* Annotate ContextPropagators with ThreadSafe instead of Immutable.
* Do not use the fully qualified ContextUtils identifier.
* Remove SpanContext support from TracingContextUtils.
* Rever to using non-defaulted key for TracingContextUtils.
* Revert the default keys for CorrelationsContextUtils.
Co-authored-by: Giovanni Liva <giovanni.liva@dynatrace.com>
* Initial relocation of ContextUtils classes.
Now they will live within the child `propagation` package,
with a prefix based on their cross-cutting concern, to be
referenced easily.
* test: add benchmarks for http trace context extract and inject
* test: add benchmarks for http trace context extract and inject
* docs: add docs
* style: apply google code style
* style: format jmh.gradle, use not deprecated archiveFileName
* test: add params for trace id and span id
* fix: fix merge conflicts
* feat: use HashMap move params to inner state
* feat: use same measurement params
* fix: apply google code style
* fix: extract span creation for more clear benchmark
* test: use vector of traceparents, increase iterations to 50k
* style: apply google code style
* feat: use vector of traceparents in inject benchmark
* Add counters to the batch recorder.
Also, allow non-monotonic batch recordings.
* remove the throws on the javadoc
* put the proper since tags on the new methods
* remove an import that seems only necessary for IDEA
* formatting
* Move unbind to the Bound to simplify usage
Signed-off-by: Bogdan Cristian Drutu <bogdandrutu@gmail.com>
* Change names to be English friendly
Signed-off-by: Bogdan Cristian Drutu <bogdandrutu@gmail.com>
* Ignore null or blank string-valued span attributes.
* also ignore null & blank strings on active span attributes.
* change to ignore at the AttributeValue level, rather than above
* switch to varargs
* update the sdk to handle the varargs option
* format
* rename a variable to make more sense
* add back a test with 2 key/value pairs
* replace the emptyLabelSet method with the empty varargs call
* add a method to create a labelset with an arbitrary number of labels.
* add notnull annotations
* rebase for SDK implementation
* remove Nonnull annotations
* Rename MeasureBatchRecorder to BatchRecorder to allow other types to be recorded.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
* ./gradlew goJF
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
* Add named meters with factory provider
* Fix documentation to instantiate a meter from a meter factory
* Fix documentation incorrectly referencing meter not meter factory
* Fix MeterFactor not Meter
Co-Authored-By: Armin Ruech <armin.ruech@gmail.com>
* Fix MeterFactor not Meter
Co-Authored-By: Armin Ruech <armin.ruech@gmail.com>
* Fix MeterFactory not Meter
Co-Authored-By: Armin Ruech <armin.ruech@gmail.com>
* Fix over 100 characters in line
* Refactor meter example names to my_library_example
* Add instrumentation library resource to named tracers
* Introduce constants for library resource label keys
* Introduce InstrumentationLibraryInfo class to replace library resource
* A rough idea of how named tracers might look in the API.
* update to require at least a name for the tracer
* Introduce another layer of factory for the provider
* remove convenience tracer methods from the OpenTelemetry class.
* Update api/src/main/java/io/opentelemetry/trace/spi/TracerFactoryProvider.java
Co-Authored-By: Armin Ruech <armin.ruech@gmail.com>
* Update api/src/main/java/io/opentelemetry/trace/TracerFactory.java
Co-Authored-By: Armin Ruech <armin.ruech@gmail.com>
* Add clarifying javadoc, per PR review
* reverse who calls whom