NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
NuGet · #806 most downloaded on NuGet
This library is a .NET implementation of the OpenTracing API. To fully understand this platform API, it's helpful to be familiar with the OpenTracing project and terminology more generally. For the time being, mild backwards-incompatible changes may be made without changing the major version number. As OpenTracing and opentracing-csharp mature, backwards compatibility will become more of a priority.
Last release 7 years ago
no release in 18 months
Ships unpredictably
gaps range from 6 weeks to 116.5 years
Most releases are documented
notes for 5 of 7 stable releases
1 version withdrawn
withdrawn after publishing
127 years old
10 releases · first in 1900
Nothing published for this version
This release adds the following changes:
This release adds the following changes:
GlobalTracer.IsRegisteredreset position
One column per quarter.
reset position (#131)
This RFC is a breaking change for tracers. Tracers who already have existing properties with the same name MAY use explicit interface implementations…
#96 implements the Trace Identifiers RFC by adding the properties string TraceId & string SpanId to ISpanContext. These identifiers make it easier to correlate tracing data with data in other systems, simplify important tasks, and allow the creation of reusable trace observers.
Current state of this RFC: Test
This RFC is a breaking change for tracers. Tracers who already have existing properties with the same name MAY use explicit interface implementations if they don't want to change the types/names of their existing properties.
ISpan.SetTag and ISpanBuilder.WithTag overloads for use with Tag types
span.SetTag(Tags.HttpStatus, 200) syntax instead of Tags.HttpStatus.Set(span, 200). The same syntax also works for ISpanBuilder (e.g. spanBuilder.WithTag(Tags.HttpMethod, "GET"))ISpanBuilder.StartActive() overload
finishSpanOnDispose: trueNoopTracer types are now publicMockTracer uses AsyncLocalScopeManager on MockTracer(IPropagator) constructor
MockTracerISpan.Log() methods now use IEnumerable<KeyValuePair<string, object>>
IDictionary<string, object> implements that interface.AsyncLocalScopeManager now uses instance variablesexamples folder which contains a port of opentracing-java's opentracing-examplesWe'd like to thank everyone who contributed code or commented on issues for their help!
This RFC is a breaking change for tracers. Tracers who already have existing properties with the same name MAY use explicit interface implementations…
This is a release candidate for the upcoming 0.12.0 release!
#96 implements the Trace Identifiers RFC by adding the properties string TraceId & string SpanId to ISpanContext. These identifiers make it easier to correlate tracing data with data in other systems, simplify important tasks, and allow the creation of reusable trace observers.
Current state of this RFC: Test
This RFC is a breaking change for tracers. Tracers who already have existing properties with the same name MAY use explicit interface implementations if they don't want to change the types/names of their existing properties.
ISpan.SetTag and ISpanBuilder.WithTag overloads for use with Tag types
span.SetTag(Tags.HttpStatus, 200) syntax instead of Tags.HttpStatus.Set(span, 200). The same syntax also works for ISpanBuilder (e.g. spanBuilder.WithTag(Tags.HttpMethod, "GET"))ISpanBuilder.StartActive() overload
finishSpanOnDispose: trueNoopTracer types are now publicMockTracer uses AsyncLocalScopeManager on MockTracer(IPropagator) constructor
MockTracerISpan.Log() methods now use IEnumerable<KeyValuePair<string, object>>
IDictionary<string, object> implements that interface.AsyncLocalScopeManager now uses instance variablesexamples folder which contains a port of opentracing-java's opentracing-examplesWe'd like to thank everyone who contributed code or commented on issues for their help!
v0.11.0 is a major release with enhancements and breaking changes!
v0.11.0 is a major release with enhancements and breaking changes!
IScopeManager & IScope types and the ITracer.ScopeManager & ITracer.ActiveSpan properties. The Util-folder contains a AsyncLocalScopeManager which either uses AsyncLocal (on .NET Core, .NET 4.6+) or CallContext (on .NET 4.5)GlobalTracer class that allows static access to the current ITracer. A tracer can be registered via GlobalTracer.Register(ITracer tracer). If no custom tracer is registered, it defaults to the NoopTracer.MockTracer for unit testing.To ensure feature parity with the Java API, the whole Java code base was ported again with the following notable differences:
DateTimeOffset instead of long ticks for all APIs that accept a timestamp.LogFields instead of log.FieldsISpanBuilder is a first class citizen (vs Tracer.SpanBuilder in Java)ISpanBuilder.StartManual() as it's already deprecated in JavafinishSpanOnDispose instead of finishSpanOnClose as the pattern in C# is called IDisposableBuiltinFormats.* vs Format.Builtin.* as it's not possible to use generic types without a typeAutoFinishScope(Manager). We will add this if there's a demand for it. Please create an issue if you need it.GlobalTracer throws if attempting to set itself; Java just writes a log message.NoopSpanBuilder does NOT inherit NoopSpanContextPropagators type instead of members on the interface as that's not possible in C#PrinterPropagator to ConsolePropagator as that's more common in .NET.This reboot results in the following notable breaking changes from v0.10.0:
IDictionary<string, object> instead of IEnumerable<KeyValuePair<string, object>> for the parameter fieldsISpanBuilder.FollowsFrom was removed
AddReference(References.FollowsFrom, ...) instead.Tags class was removed in favor of Java's tags system.
Tags.SpanKind.Key.BuiltinFormats.HttpHeaders instead of Formats.HttpHeaders.NullTracer was renamed to NoopTracer.
NoopTracerFactory.Create to access the tracerOpenTracingException and UnsupportedFormatException were removed as they are not yet formally defined in the specification.netstandard1.3, netstandard2.0 and net45 instead of netstandard1.0. This should ensure that the library is not used on platforms that are no longer supported by Microsoft (e.g. Silverlight). Please create an issue if you need support for an older platform.We'd like to thank everyone who contributed code or commented on issues for their help!
https://www.nuget.org/packages/OpenTracing/0.10.0
Major rework of 0.8.2 with many breaking changes! The library is now very close to the Java version.
Major rework of 0.8.2 with many breaking changes! The library is now very close to the Java version.
NuGet Package: https://www.nuget.org/packages/OpenTracing/0.9.0
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →