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