* 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
* Implemented a span processor for the TraceZ zPage
* Implemented aggregation logic for running and latency based spans,
summary table generation with running span logic
* Implemented aggregation logic for error based spans
* Finished implementation of TraceZ zPage summary table
* Finished implementation of HttpHandler, HttpServer, and TraceZ zPage
* Refactored the sdk_contrib folder to follow updated syntax
* Removed duplicate function
* Changed inline base64 images
* Fixed copyright statement
* Modified the TracezSpanProcessor to only allow for a limited number of completed spans (#17)
* Modified the TracezSpanProcessor to only allow for a limited number of completed spans
* Renamed count functions and reduced logic in addToBucket
* Fixed typos and turned SpanProcessor and DataAggregator to package private
* Separated SpanBuckets and LatencyBoundaries from TracezDataAggregator
* Switched to PrintStream, removed bufferWritter, removed factory and changed to package private constructor, added documentation for getTracerzHandler behavior, and other small fixes
* Fixed package name
* Changed way of registering handlers, changed atomicBoolean to final, removed unnecessary lock
* Changed registerTracezZPageHandler to package private
* Fixed javadoc styling and wording
* Added constants for splitters, changed httpserver to compileOnly dependency
* Removed FQNs from backend files
* Removed style errors
* Updated TracezSpanProcessor to maintain a set of span names incrementally
* Added visibleForTesting tag, adjusted HTML expression
* Removed unused functions in the data aggregator
* Made TracezSpanBuckets thread-safe
* Changed test to use Mockitorule, removed unnecessary Formatter, unrolled attribute value
* Changed test with @Mock to use Mockito test runner
* Renamed LatencyBoundaries to LatencyBoundary and cleaned up code
* Replaced the EvictingQueue with a faster SpanBucket class and modified checks in TracezDataAggregatorTest
* Addressed additional comments
* Migrated images to resources, used logger to log errors, and other minor fixes
* Moved a variable to within a class in TracezZPageHandler
* Removed printStackTrace, added test for query parameter
* Changed logger to static field, used log method to log detailed stackTrace
* Made minor fixes
* Resolved unmodifiable list error with getOkSpans and getErrorSpans
* Changed map @Mock to empty map, added more test
* Changed test runner
Co-authored-by: williamhu99 <wilhu@google.com>
Co-authored-by: William Hu <32604217+williamhu99@users.noreply.github.com>
* support aws plugins EC2/ECS/Beanstalk
* support aws plugins EC2/ECS/Beanstalk
* change to Guava Files, change Map to Attributes
* Remove DockerHelper until has container.id in sematic conventions.
* Introduce an Attributes interface and have ImmutableAttributes and the AttributesMap implement it.
* make the attribute limiting a little clearer.
* tiny javadoc fix
* Rework to restore the Attributes class, and introduce a ReadableAttributes interface
* polish the javadoc a bit
* fix some broken javadoc
* revert example change; revert test name change
* javadoc de-escalation
* fix bad merge