Commit Graph

4 Commits

Author SHA1 Message Date
Trask Stalnaker 71cac47c3e
Support traceId-based r-values (#417)
* Support traceId-based r-values

* Interface

* Fix javadoc

* Spotless

* More

* Clean

* Review
2022-08-19 10:42:28 -07:00
Otmar Ertl a26d44126a
Consistent reservoir sampling span processor (#352)
* upgraded to hipparchus 2.1

* consistent reservoir sampling span processor

* made constant package private
2022-06-15 09:35:43 -07:00
Otmar Ertl 6778060281
fixed #349 (#350) 2022-05-24 14:20:27 -07:00
Otmar Ertl 0b9ab8a7d4
sampler and span processor prototype implementations for consistent sampling (#226)
* sampler and exporter implementations for consistent sampling

* improved dependencies (in particular, removed dependency on guava)

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/samplers/ConsistentParentBasedSampler.java

Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>

* reverted some changes

* removed wrong immutable annotation

* added javadoc

* avoid else statements when returning

* factory methods for consistent samplers, avoid exposure of implementations

* added javadoc for AND and OR sampler composition

* replaced use of synchronized by atomic reference

* simplified thread local initialization

* removed consistent reservoir sampling

* improved comment

* removed unnecessary clipping of sampling probability

* added javadoc explaining maths of implementation

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/state/OtelTraceState.java

Co-authored-by: Joshua MacDonald <jmacd@users.noreply.github.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/state/OtelTraceState.java

Co-authored-by: Joshua MacDonald <jmacd@users.noreply.github.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/state/OtelTraceState.java

Co-authored-by: Joshua MacDonald <jmacd@users.noreply.github.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/state/OtelTraceState.java

Co-authored-by: Joshua MacDonald <jmacd@users.noreply.github.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/samplers/ConsistentComposedAndSampler.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/samplers/ConsistentComposedOrSampler.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/samplers/ConsistentRateLimitingSampler.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/samplers/ConsistentParentBasedSampler.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/samplers/ConsistentSampler.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* added component owner for consistent sampling

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/state/OtelTraceState.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* removed nonnull annotation

* renamed variable s -> pair

* renamed char parameter r -> c

* renamed method isLowerCaseNum -> isDigit

* use empty list instead of null for otherKeyValuePairs

* simplified isValueByte method

* Update consistent-sampling/src/main/java/io/opentelemetry/contrib/state/OtelTraceState.java

Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>

* renamed variable sepPos -> separatorPos

* replaced 0. and 1. by 0.0 and 1.0

* improved readability as suggested by @trask

* removed unused methods from RandomUtil

* added javadoc

* renamed targetSpansPerNanosLimit -> targetSpansPerNanosecondLimit

* throw IllegalArgumentException instead of returning NaN + added comments

* renamed tsStartPos -> startPos and eqPos -> colonPos

* improved readability of invariant check

* added some more test cases

* fixed typo

* removed unused method

* refactored random generator

* made OtelTraceState and RandomGenerator package private and moved them to samplers package

Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
Co-authored-by: Joshua MacDonald <jmacd@users.noreply.github.com>
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2022-04-19 22:06:15 -07:00