* Enable StyleCop rules for Test projects
This enables most of the StyleCop for test projects cleaning up any
errors as appropriate.
* Enable StyleCop rules for Test projects
This enables most of the StyleCop for test projects cleaning up any
errors as appropriate.
* Add line break at end of ruleset files
* Correct multi-line parameter after rebase
* Fixed HttpHandlerDiagnosticListener so it doesn't clear status description after it sets it. Updated JaegerExporter to send ot.status_code & ot.status_description.
* Code review.
* Code review.
* first
* Add friendly API to start active spans
* update readme and add test
* rename benchmarks
* Remove StartActiveRootSpan - this is rare case
* Move active spans creation to extensions, WithSpan has flag to control lifetime
* tests pass
* cleanup
* a few more tests
* test
* docs
* I hate stylecop
* fix broken test
* Dispose spans on end (when span lifetime is the same as scope lifetime)
* wip
* ref: Take func for Links
* ref: Avoid allocation when no links
* ref: Allocate only if necessary
* fix some unit tests
* ref: Overload taking IEnumerable
* fix: overload
* ref: use overload with enumerator
* ref; use enumerator overload
* fix: Cast double to long to match expected
* ref: Use .Any()
* ref: Pass null thru for IEnumerable
* test: SpanTest
* ref: Align params
* ref: Use List<Link> in Span
* ref: Got cough being lazy
* fix: Ludimila fixes my shitty code
* ref: including max value
Co-Authored-By: Liudmila Molkova <lmolkova@microsoft.com>
* ref: remove redundant list allocation
This is, where possible, a direct port of the current Java shim. There are some holes/TODOS. Notably:
-Missing the Binary injection/extraction of the span context. This doesn't exist with the current implementation of OpenTracing yet.
-Missing explicit timestamps for calls to OpenTracing ISpan::Log.
-Missing explicit timestamps for calls to OpenTracing ISpan::Finish
-Various calls to set/get baggage are not implemented. Requires OpenTelemetry DistributedContext to be finalized.
Other oddities worth nothing:
-The SpanBuilderShim has some conditional code for calling OpenTel SetCreateChild(true|false)
-The ScopeManagerShim is actively tracking scopes returned by calls to OpenTel WithSpan and associated those with the OpenTel ISpan used when calling WithSpan.
I tested this shim against an ASP.NET Core 3 Preview 8 service wired up with OpenTracing netcore and grpc collectors and exporting to Jaeger backend.
The included tests are unit tests only; no E2E tests.