* Split out :api:events
* Remove events from :api:logs
* Log SDK also implements Events API
* Fix example
* Add SdkEventEmitterProvider which delegates to LoggerProvider
* Make eventDomain argument optional
* Do not initialize AutoConfiguredOpenTelemetrySdk in OpenTelemetry.get
* GlobalOpenTelemetry triggers autoconfigure based on env var / system property
Constructing an `AssertionError` is rather expensive, and pointless in
cases that we're not even going to log it. With this commit we skip all
this unnecessary work.
Relates https://github.com/elastic/elasticsearch/issues/89107
* fix bug
* change the fix
* add new cases and changed the way to fix the bug
* fix some describe words
Co-authored-by: John Watson <jkwatson@gmail.com>
* modify some describe mistake
Co-authored-by: John Watson <jkwatson@gmail.com>
* run spotlessApply
Co-authored-by: John Watson <jkwatson@gmail.com>
* Add batch callback API
* Update API to accept varargs of instruments
* Add more tests
* Add default API implementations, more test coverage
* PR feedback
* Return noop instrument if name is invalid
* Validate instrument name in default meter
* Use API Usage logger and include stack trace
* Rename methods to check* instead of is*
* Allow multiple async callbacks, allow callbacks to be removed
* Use AutoCloseable to remove callbacks, don't unregister from MetricStorageRegistry
* Use CopyOnWriteArrayList
* PR feedback
* PR feedback
* Overload put with AttributeKey with String array
* Use generic instead of String
* Format and javadoc
* Cast to type
* New public method
* File based view configuration (#4163)
* Add experimental view config module
* Rename view-config to metric-incubator
* Switch naming from camelCase to snake_case
* Extend with attribute key filter
* Wire up to autoconfiguration
* Use snakeyaml instead of jackson
* PR feedback
* PR feedback
* Remove explicit okio dependency (#4187)
* Deprecate PrometheusCollector (#4185)
* Correct javadoc
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Cast to type
Co-authored-by: jack-berg <34418638+jack-berg@users.noreply.github.com>
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
Includes the trace state in the marshaled spans and span links, resolving the corresponding TODOs in the code.
The `tracestate` header encoding and decoding logic has been moved to a new internal class `W3CTraceContextEncoding`.
Fixes: #4189
* Replace OpenTelemetry with GlobalOpenTelemetry in javadoc code snippets
* use openTelemetry instread of GlobalOpenTelemetry
* replace one ome usage of GlobalOpenTelemetry
* Add MeterProvider to OpenTelemetry API
* Spot
* Set
* Move NoopMeter to package private
* Merge metrics API code into API package
* Finish
* Fix / clean
* Drift
* Update extensions/noop-api/src/main/java/io/opentelemetry/extension/noopapi/NoopOpenTelemetry.java
Co-authored-by: John Watson <jkwatson@gmail.com>
* Spot
Co-authored-by: John Watson <jkwatson@gmail.com>
* Add remove method to AttributesBuilder
* Improve test coverage
* Remove attributes by nulling out instead of removing from list
* feedback wip
* Add AttributesBuilder#remove(String) method
* Add removeIf() method
* AbstractFixedSizeExemplarReservoir uses more efficient removeIf() attribute filter
* Add an auto-configuration builder.
* Test
* Builder
* More
* Revamp
* Customizer only customizes
* Pass config to customizers
* More specific name
* Cleanup
* Cleanup
* SPI test
* Clean
* Clean
* Clean
* Shutdown once instead of flush and shutdown for simple
* Clean
* Cleanups
* Cleanup
* URL encode & decode baggage values
Resolves#3442
* Vendor in the guava url escaping code, and use it, rather than URLEncoder
* add fuzz testing for the escaper and propagator
* formatting
* Remove strict value validation from the baggage implementation
And, ensure we encode baggage metadata as well as the baggage value.
* Add additional fuzz iterations, manually.
* remove the usage of the vintage engine and use driver test methods instead
* Avoid unnecessary calls to TraceId and SpanId.isValid()
* Alternative: move ImmutableSpanContext to internal package
* javadoc
* Only skip for safe IdGenerators
* Simplify
* Errorprone
* Add test and fix boolean logic
* Spotless
* Add test
* Revert toString test change
* optimize the single-attribute creation flow to avoid unneeded allocations
* Optimize the implementations of 1 and 2 element Attributes instances.
* Refactor to *actually* save allocations and fix a couple of bugs.
* Update the API to the latest SDK specification.
* API updates to other sdk areas.
* First half of SDK updates for API.
Passing off to other cmoputer.
* Get SDK compiling again.
* Get tests compiling again (and failing).
* Fix bad copy-paste error.
* Get all SDK tests passing.
* More fixes to builds across SDK impls.
* Remove unecessary publics
* more fixes for new API.
* spotless fixes.
* Make tests for metric points order independent.
* Restore readme.
* Fix readmes.
* Add noop meter provider tests for code coverage.
* Add code coverage for assertion library.
* Fix wierd test failure that gradle cache is preventing me from seeing locally.
* Fix javadoc/spelling comments from review.
* Remove marker interfaces.
* Switch from atomic ref to volatile.
* Fixes from review.
* Apply suggestions from code review
Co-authored-by: John Watson <jkwatson@gmail.com>
* Fixes from review.
* Fixes from review.
* Update OTLP HTTP exporter to use new metrics api
Co-authored-by: John Watson <jkwatson@gmail.com>
* Add the OpenTelemetry schema URL to the InstrumentationLibraryInfo and the corresponding API calls.
* small refactoring and doc tweaks from feedback
* make the instrumentation version nullable on the method that takes a schema
* update the apidiffs
* add since tags and a few more missing nullable annotations
* Switch to using a Builder rather than method overloads.
Problem:
Javadocs comments at Tracer interface contains call of unexistent method OpenTelemetry.getTracer()
Solution:
Replace OpenTelemetry.getTracer() with openTelemetry.getTracer(String, String) in examples at javadocs