* add some basic benchmarks for various baggage operations
* update for changes from upstream; pre-allocate the strings in the benchmark.
* allocate the strings statically because we can
This PR fixes an inconsistency that MaxLengthOfAttributeValues was allowed to be set to 0, then thrown internal exception.
We should check for arguments only at public APIs.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
There are some things left to be done:
* Decide if context package should also be opentelemetry-api-context.
* Cleanup internal packages, things that are used by only one artifact should be moved there.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
* Detect GC leaks of scopes in StrictContextStorage.
* More
* Finish
* Force GC more aggressively
* Cleanup
* Vendor code directly
* Copy test too
* Try waiting more
* ep
* oops
* Remove from build.gradle
* Drift
* Log on multiple
* Cleaner ourselves.
* EP
* Move into if
* Revert accidental
* Convert Attributes to an interface
* Add javadoc explaining Attributes implementation requirements.
* Convert the AttributesBuilder into an interface.
* update from upstream changes
* move the implementation class out of the interface
* clean up some javadoc that referenced non-public classes
* convert TraceState to an interface
* don't expose the impl
* Remove the un-needed TraceState Entry objects.
* Add additional javadoc documenting requirements for interface implementors.
* make the implementation non-public
* remove un-needed test docs
* Update api/src/main/java/io/opentelemetry/api/trace/TraceState.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Update api/src/main/java/io/opentelemetry/api/trace/TraceState.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* formatting fix
* Convert the TraceStateBuilder into an interface.
* Introduce an intermediate class to get around classloading cycles.
* extract a method to remove an entry from the builder
* add a comment about the possible inefficiency in the implementation
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
- changes the return type of the fields() method in TextMapPropagator from List<String> to Collection<String>
and updated all implementations for consistency
CHANGELOG: Invalid TraceState entries will now be ignored, rather than causing the entire TraceState to be invalidated.
* Ignore invalid usage of TraceState instead of throwing.
* Format
* Missed a test
* Make the OpenTelemetrySdk a subclass of DefaultOpenTelemetry
* Remove SPI from the explicit OpenTelemetrySdk builder usage.
Add a (super ugly) test to make sure that the clock and resource are getting set.
* Update sdk/all/src/test/java/io/opentelemetry/sdk/OpenTelemetrySdkTest.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Update sdk/all/src/test/java/io/opentelemetry/sdk/OpenTelemetrySdkTest.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* address code review comments; add tests
* Require the MeterProvider to be a MeterSdkProvider
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
CHANGELOG: Deprecated the `getCanonicalCode` method on `SpanBuilder` ; replaced with `getStatusCode`
* Some cleanup in span land.
* Clean up the SpanBuilder javadoc to match the current APIs
* Scrub mentions of canonical status code
* Deprecate the getCanonicalCode method on SpanBuilder and replace with getStatusCode
* rename an internal method to make more sense
* Update api/src/main/java/io/opentelemetry/api/trace/SpanBuilder.java
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
* Update api/src/main/java/io/opentelemetry/api/trace/SpanBuilder.java
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
* Update api/src/main/java/io/opentelemetry/api/trace/SpanBuilder.java
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
* add tests for the deprecated method
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>