* Use IsEnabled DS callback to filter out requests
* Update src/OpenTelemetry.Collector.Dependencies/DependenciesCollectorOptions.cs
Co-Authored-By: Bruno Garcia <bruno@brunogarcia.com>
* Update src/OpenTelemetry.Collector.AspNetCore/RequestsCollectorOptions.cs
* Implementing the "Named Tracers" proposal for .NET
* Improve Named Tracers implementation.
LoggingTracer now prints "LibraryResource" information (name + version)
Make "LibraryResource" available on Spans.
* Improved and refactored Tracer creation
* Fixed issues and tests after merge
* Implemented PR feedback
* Implementing the "Named Tracers" proposal for .NET
* Improve Named Tracers implementation.
LoggingTracer now prints "LibraryResource" information (name + version)
Make "LibraryResource" available on Spans.
* Improved and refactored Tracer creation
* Fixed issues and tests after merge
* Implemented PR feedback
* Implement PR review feedback
* Organize using directives
* Update src/OpenTelemetry.Collector.AspNetCore/RequestsCollector.cs
Co-Authored-By: Liudmila Molkova <lmolkova@microsoft.com>
* Update RequestsCollector.cs
* Update ApplicationInsightsSDK, DiagnosticSource and minor applicationinsights exporter fixes
* remove sys diagnostic on test proj as its is referred via abstractions
* Implement batching processor and use it by default
* up
* Tracer ctor fix
* relax tests checks for number of export calls
* Update src/OpenTelemetry/Trace/Export/SimpleSpanProcessor.cs
Co-Authored-By: Bruno Garcia <bruno@brunogarcia.com>
* relax tests
* Set timestamp on the event and remove iTimedEvent
* Update src/OpenTelemetry.Abstractions/Trace/Export/ITimedEvents.cs
Co-Authored-By: John Du Hart <jduhart@mdsol.com>
* Update src/OpenTelemetry.Abstractions/Trace/Export/ITimedEvents.cs
Co-Authored-By: John Du Hart <jduhart@mdsol.com>
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.
* Move reusable Collector related classes into OpenTelemetry
Four classes were essentially duplicated between the aspnetcore and dependencies collector projects. We can shared these classes between the two projects by making some generic.
* Innocuous whitespace change to trigger the build again. There is an unrelated non-deterministic test that is failing
* Increasing the allowable range from AssertApproxSameTimestamp from 10ms to 20ms. Tests keep failing with times like 12 and 14ms
* Removing the PropertyFetcher from the public interface
* Applying a bug fix in the PropertyFetcher. The same kind of fix was done in the OpenTracing ASP.NET Core instrumentation package
* Change "OpenTelemetry.Trace.Status" to a struct type.
Status carries mainly a code representation operation state and is a good candidate for a value type.
This can potentially improve GC and memory pressure.
* Adding project placeholders for the OpenTracing shim
Issues:
[Create an OpenTracing Bridge](https://github.com/open-telemetry/opentelemetry-dotnet/issues/28)
* Reference Abstractions instead of the SDK initially
* Innocuous change to trigger the build again. Looks like a non-deterministic transient test failure to me
* Multiple calls to DiagnosticSourceSubscriber::Dispose would throw nullrefs.
All Dispose methods should be idempotent.
- Switched the dispose flag check(s) from using Volatile to using Interlocked.CompareExchange and Interlocked.Read
- Add null checks to the arguments
- Added a simple unit test class for this internal class
* Wrap InternalVisibleTo in a #if SIGNED preprocessor block
* Applying the same Dispose pattern to DiagnosticSourceSubscriber in the Collector.Dependencies assembly