* subsume methods from AttributesKeys to AttributeKey
* remove missed instance of AttributesKeys
* make javadoc wording more representative of method intent
* Remove Link from API, use SpanData.Link in Sampler
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
* Fix tracing_incubator
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
* have the TracerSdkProvider return the public interface, rather than a package-access class.
* change the OpenTelemetrySdk to return a management interface, rather than the SDK implementation class directly.
* formatting fix
* rename methods/parameters for the new interface
get rid of almost all production-code references to the TracerSdkProvider
* update some docs that still refer to using the old method/class
* initial commit of logging support extension
* complete move from extensions to sdk_extensions
* address code review comments
* move logging_support to logging/support
* missed test update in last commit
* code format
* change list to queue in implementation, collection in api
* missed making a utility method static
* fix a broken test
* Update sdk_extensions/logging/support/src/main/java/io/opentelemetry/logging/api/LogRecord.java
Co-authored-by: Tigran Najaryan <4194920+tigrannajaryan@users.noreply.github.com>
* reworked to align with how we batch process spans
* move of CompletableResultCode and formatting
* update AnyValue to use long instead of int
* address code review comments
rename Exporter to LogExporter, move to 'export' package
rename LogExporter.accept(data) to LogExporter.export(data)
decrease flush interval from 5000 to 200ms
return CompletableResultCode from LogExporter.shutdown()
change traceId and spanId types to String from byte[]
* implement BatchLogProcessor.fromConfigMap
* rearrange packages
* add readme
* respond to review feedback, refactored BatchLogProcessor
* added a couple tests
* update to use new Attributes, remove support directory, public LogRecord getters
Co-authored-by: Tigran Najaryan <4194920+tigrannajaryan@users.noreply.github.com>
* Add a generic type for the key on the ImmutableKeyValuePairs.
This necessitated changing the `get` to `getValue` to avoid clashing with the java.util.Map interface.
Also introduced convenience sub-interfaces for consuming labels and attributes, so consumers don't have to worry about the types if they don't want to.
* Make AttributesMap not extend map, and restore the get method name for Attributes.
* key class and implementation
* key class and implementation
* The code compiles
* little tweaks
* some cleanup, tests are passing
* remove AttributeValue and clean up misc. references to it.
* clean up some unused bits
* add a TODO
* a bit of cleanup; fix a todo
* update for changes from the main branch
* Change method to get the underlying key.
Move the key creators to a AttributesKeys class.
Hide the implementation classes and replace with interface use.
* use autovalue for the key implementations
* fix javadoc issues
* update benchmark keys, and a few tweaks from PR review
* Add javadoc notes to encourage using the lower-overhead attribute options.
* Add javadoc clarifying subclass responsibilities around empty keys.
* make the compareTo on AttributeKeyImpl null-safe, for extra safety
* fix formatting
* switch to java 8
* update the READMEs and use Object.equals in a couple of cases to test that we're really compiling for java 8/android 24.
* formatting
* use the newer release options for the build, and change the int test to not be java 7 any more.
* switch back to source/target compatibility
* sure wish I could run docker locally to test this out.
* move TraceFlags into the SpanContext, and expose the relevant flags.
* Cleanup from rebase from main branch
* Address comments from PR review
* Update extensions/trace_propagators/src/main/java/io/opentelemetry/extensions/trace/propagation/AwsXRayPropagator.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Undo @anuraaga's bad suggestion. ;)
* change the traceFlags input to the TraceContext be a byte, rather than a boolean.
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Add a generic type for the key on the ImmutableKeyValuePairs.
This necessitated changing the `get` to `getValue` to avoid clashing with the java.util.Map interface.
Also introduced convenience sub-interfaces for consuming labels and attributes, so consumers don't have to worry about the types if they don't want to.
* Add some javadoc to the new interfaces.
* Make AttributesMap not extend map, and restore the get method name for Attributes.
* make ImmutableKeyValuePairs also have a parameterized key type
* This is a combination of 2 commits.
This is the 1st commit message:
WIP on converting to String-based SpanContext
don't hand out the byte arrays publicly, but require making copies
make sure to hand out fresh invalid byte arrays.
Use strings for span and trace ids.
Switch over to CharSequence instead of String for the ids
Fix a couple of places that were casting to String
Add some simple wrappers for the generated longs to save converting until the last moment to the character-based representation.
introduce a reusable threadlocal char buffer for generating random ids.
update for changes from upstream
Change the SpanContext to store the ids as Strings internally
Change the id access methods on SpanContext to be clearly labeled as the base16 representations
Add a new create method that allows specifying offsets for traceId and spanId CharSequences
Provide an option for creating a SpanContext from longs or Strings, optionally.
fix a typo
update from upstream
The commit message #2 will be skipped:
don't hand out the byte arrays publicly, but require making copies
* WIP on converting to String-based SpanContext
* Update the SpanContext to only store Strings internally for Trace and Span ids.
* remove dead files
* cleanup some CharSequence usages to String
* Update api/src/main/java/io/opentelemetry/trace/BigendianEncoding.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Update extensions/trace_propagators/src/main/java/io/opentelemetry/extensions/trace/propagation/B3PropagatorInjectorSingleHeader.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Update api/src/main/java/io/opentelemetry/trace/SpanId.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Update api/src/main/java/io/opentelemetry/trace/TraceId.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* updates from PR suggestion fubars
* some cleanup from PR feedback
* Switch back to String from CharSequence
* Get rid of the overload with the offsets
* Lots of bits of cleanup from PR feedback.
* more renaming of base16 to hex
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* start working on a ReadWriteSpan for startSpan
* Finish converting the disruptor and the unit tests to the new model.
* Add some simple javadoc to the ReadWriteSpan interface
* Removed URLEncoder
* Fixed typo
* Added URLDecoding
* Included comment for string replacement
* Added unit tests for special characters in span names
* Resolved URL decoding issues
* Moved url decoding to parseQueryMap and updated the corresponding unit tests
* Added a README file for zPage quickstart
* Add images for README
* Updated README
* Add frontend images
* Add backend images
* Added our design doc
* Added details on package
* Reworded a few lines
* Moved DESIGN.md to a docs folder and changed gradle config to implementation
* Changed wording regarding HttpServer requirement
* Added zpages folder under docs, resolved broken image links
* Resolved comments for the design md file
* Made a few wording changes
* Wrote a benchmark test for TracezSpanBuckets (#23)
* Scaffolded logic for basic benchmark tests
* Wrote benchmark tests for TracezSpanBuckets
* Updated README with benchmark tests
* Changed the wording slightly
* Updated README file (#25)
* Wrote benchmark tests for TracezDataAggregator (#24)
* Scaffolded logic for basic benchmark tests
* Wrote benchmark tests for TracezSpanBuckets
* Updated README with benchmark tests
* Changed the wording slightly
* Added a set of benchmark tests for TracezDataAggregator
* Modified README formatting
* Changed benchmark test to negate dead code elimination
* Added Javadocs to the TracezDataAggregator benchmark tests
* Removed benchmark results from README and added a param to the TracezDataAggregator benchmark tests
* Update sdk_extensions/zpages/src/jmh/java/io/opentelemetry/sdk/extensions/zpages/TracezDataAggregatorBenchmark.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Added multiple param values for TracezDataAggregatorBenchmark
* Changed TraceConfigz zPage form submit to use POST request
* Added requestMethod parameter to emitHtml, limited TraceConfig change on POST request only
* Removed duplicate parse function, added test for update on POST request only
* Added separate method for processing request
* Removed unnecessary error check in tests, used try resources for inputstream
Co-authored-by: williamhu99 <wilhu@google.com>
Co-authored-by: William Hu <32604217+williamhu99@users.noreply.github.com>
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Removed URLEncoder
* Fixed typo
* Added URLDecoding
* Included comment for string replacement
* Added unit tests for special characters in span names
* Resolved URL decoding issues
* Moved url decoding to parseQueryMap and updated the corresponding unit tests
* Added a README file for zPage quickstart
* Add images for README
* Updated README
* Add frontend images
* Add backend images
* Added our design doc
* Added details on package
* Reworded a few lines
* Moved DESIGN.md to a docs folder and changed gradle config to implementation
* Changed wording regarding HttpServer requirement
* Added zpages folder under docs, resolved broken image links
* Resolved comments for the design md file
* Made a few wording changes
* Wrote a benchmark test for TracezSpanBuckets (#23)
* Scaffolded logic for basic benchmark tests
* Wrote benchmark tests for TracezSpanBuckets
* Updated README with benchmark tests
* Changed the wording slightly
* Updated README file (#25)
* Wrote benchmark tests for TracezDataAggregator (#24)
* Scaffolded logic for basic benchmark tests
* Wrote benchmark tests for TracezSpanBuckets
* Updated README with benchmark tests
* Changed the wording slightly
* Added a set of benchmark tests for TracezDataAggregator
* Modified README formatting
* Changed benchmark test to negate dead code elimination
* Added Javadocs to the TracezDataAggregator benchmark tests
* Removed benchmark results from README and added a param to the TracezDataAggregator benchmark tests
* Update sdk_extensions/zpages/src/jmh/java/io/opentelemetry/sdk/extensions/zpages/TracezDataAggregatorBenchmark.java
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Added multiple param values for TracezDataAggregatorBenchmark
Co-authored-by: Terry Wang <wtyanan@google.com>
Co-authored-by: Anuraag Agrawal <anuraaga@gmail.com>
* Implemented TraceConfigZ zPage (#22)
* Added link to index zpage
* Used AutoValue for TableRow classes
* Changed wording of HTML content
* Changed Builder to interface, fixed build issues
* Removed tableRow classes, added omitEmpty in parseQueryMap
* Added test for invalid inputs
* Changed to use illegalArgumentException
* Refactor decision to sampling result
* Fix bad refactor samplingResult => decision
* Fix decision not sampling result
* Fix comments with divergent explanations of same entity
* Fix make comments clearer
* Add links to SamplingResult
* Removed URLEncoder
* Fixed typo
* Added URLDecoding
* Included comment for string replacement
* Added unit tests for special characters in span names
* Resolved URL decoding issues
* Moved url decoding to parseQueryMap and updated the corresponding unit tests
* Added unit tests for SpanBucket
* Included a comment to make the last test more clear
* Rewrote the concurrency test
* Removed assertion from exception and added a time limit for the concurrency test case
* Added two abstract getter method for obtaining page information
* Added page information getter method
* Implemented index zPage handler
* Implemented index page for zPages
* Added unit test for index zPage
* Small style and comment fixes
* Increased font size, code style fix
* Fixed font size issue
* Fixed immutable list sorting bug
* Added more test covering SpanDetails section
* Used ImmutableList.sortedCopyOf instead of ArrayList, added a test for unknown ztype
* Switched to immutableMap and immutableList