Released 2024-Jun-14
- Breaking change: Revert space character encoding change from
+
to%20
for baggage item values from #5303 (#5687)
Released 2024-Jun-07
- The experimental APIs previously covered by
OTEL1000
(LoggerProvider
,LoggerProviderBuilder
, &IDeferredLoggerProviderBuilder
) will now be part of the public API and supported in stable builds. (#5648)
Released 2024-May-20
- Breaking change: Fix space character encoding from
+
to%20
for baggage item values when propagating baggage as defined in W3C Baggage propagation format specification. (#5303)
Released 2024-Apr-17
Released 2024-Apr-02
Released 2024-Mar-27
Released 2024-Mar-14
Released 2023-Dec-08
Released 2023-Nov-29
- Updated
System.Diagnostics.DiagnosticSource
package version to8.0.0
. (#5051)
Released 2023-Oct-16
-
Fixed a bug which caused
Tracer.StartRootSpan
to generate a child span if a trace was running (Activity.Current != null
). (#4890) -
Added a
Tracer
cache inside ofTracerProvider
to prevent repeated calls toGetTracer
from leaking memory. (#4906) -
Fix
TraceContextPropagator
by validating the first digit of the hex-encodedtrace-flags
field of thetraceparent
header. (#4893)
Released 2023-Sep-05
Released 2023-Aug-21
Released 2023-Jul-12
-
Updated
System.Diagnostics.DiagnosticSource
package version to7.0.2
. (#4576) -
Breaking change: In order to make
RuntimeContext
compatible with ahead-of-time compilation (AOT),RuntimeContext.ContextSlotType
can only be assigned one of the following types:AsyncLocalRuntimeContextSlot<>
,ThreadLocalRuntimeContextSlot<>
, andRemotingRuntimeContextSlot<>
. ASystem.NotSupportedException
will be thrown if you try to assign any type other than the three types mentioned. (#4542) -
Experimental (pre-release builds only): Added Logs Bridge API implementation (
LoggerProviderBuilder
,LoggerProvider
,Logger
, etc.). (#4433, #4735)
Released 2023-Jun-26
Released 2023-Jun-05
Released 2023-May-25
Released 2023-Mar-31
Released 2023-Mar-07
Released 2023-Feb-24
Released 2023-Feb-10
Released 2023-Feb-01
Released 2023-Jan-09
Released 2022-Dec-12
- Updated to System.Diagnostics.DiagnosticSource version
7.0.0
.
Released 2022-Nov-07
- Updated to System.Diagnostics.DiagnosticSource version
7.0.0-rc.2.22472.3
.
Released 2022-Oct-17
Released 2022-Sep-29
- Updated to System.Diagnostics.DiagnosticSource version
7.0.0-rc.1.22426.10
. (#3698)
Released 2022-Aug-18
-
Updated to System.Diagnostics.DiagnosticSource preview version 7.0.0.
With this update, applications targeting .NET 5 and lower will receive a warning at build time as described here (note: building using older versions of the .NET SDK produces an error at build time). This is because .NET 5 reached EOL in May 2022 and .NET Core 3.1 reaches EOL in December 2022. End of support dates for .NET are published here.
There is no guarantee that System.Diagnostics.DiagnosticSource will continue to work on older versions of .NET. However, the build warning can be suppressed by setting the
SuppressTfmSupportBuildWarnings
MSBuild property.This does not affect applications targeting .NET Framework. #3539
Released 2022-Aug-02
- Add
Activity.RecordException
overload accepting additional attributes to add to theActivityEvent
. #3433
Released 2022-Jun-03
Released 2022-June-1
B3Propagator
class fromOpenTelemetry.Extensions.Propagators
namespace has been deprecated and moved as is to a newOpenTelemetry.Extensions.Propagators
namespace, shipped as part of theOpenTelemetry.Extensions.Propagators
package. It will be removed in the next major release, see issue #3259
Released 2022-May-16
Released 2022-Apr-15
- Removes .NET Framework 4.6.1. The minimum .NET Framework version supported is .NET 4.6.2. (#3190)
Released 2022-Apr-15
Released 2022-Apr-12
Released 2022-Mar-30
Released 2022-Mar-04
- Improved wildcard support for
AddSource
,AddMeter
to cover?
(which matches exactly one character). (#2875)
Released 2022-Feb-02
- Added
ParentSpanId
toTelemetrySpan
(#2740)
Released 2021-Nov-29
Released 2021-Nov-19
- Updated System.Diagnostics.DiagnosticSource to version 6.0.0. (#2582)
Released 2021-Oct-08
-
Added
IDeferredMeterProviderBuilder
(#2412) -
Breaking: Renamed
AddSource
toAddMeter
on MeterProviderBuilder to better reflect the intent of the method.
Released 2021-Sep-23
- Updated System.Diagnostics.DiagnosticSource to version 6.0.0-rc.1.21451.13
Released 2021-Sep-13
- Static Baggage operations (
SetBaggage
,RemoveBaggage
, &ClearBaggage
) are now thread-safe. Instance-based Baggage operations no longer mutateBaggage.Current
(breaking behavior change). For details see: (#2298)
Released 2021-Aug-24
Released 2021-Jul-23
-
Add Metrics support.(#2174)
-
Removes .NET Framework 4.5.2, .NET 4.6 support. The minimum .NET Framework version supported is .NET 4.6.1. (#2138)
Released 2021-Jul-12
Released 2021-Jun-25
- Added
IDeferredTracerProviderBuilder
. (#2058)
Released 2021-Jun-09
Released 2021-May-11
- Adds
AddLegacySource()
toTracerProviderBuilder
(#2019)
Released 2021-Apr-23
BaggagePropagator
now usesbaggage
as the header name instead ofBaggage
toExtract
from andInject
tocarrier
(#2003)
Released 2021-Mar-19
Released 2021-Feb-10
Released 2021-Feb-09
Released 2021-Feb-04
- Relax System.* packages version requirement to remove upper bound.
- Require System.Diagnostics.DiagnosticSource package 5.0.1.
Released 2021-Jan-29
- In order to align with the
spec
the
Status
(otel.status_code) tag (added onActivity
using theSetStatus
extension) will now be set as theUNSET
,OK
, orERROR
string representation instead of the0
,1
, or2
integer representation. (#1579 #1620) - Metrics API/SDK support is in an experimental state and is not recommended for
production use. All metric APIs have been marked with the
Obsolete
attribute. See #1501 for more information. (#1611) Status.WithDescription
will now ignore the provided description if theStatus.StatusCode
is anything other thanERROR
. (#1655)- Relax System.Diagnostics.DiagnosticSource version requirement to allow versions >=5.0. Previously only versions up to 6.0 (excluding 6.0) was allowed.
- Metrics removed as it is not part 1.0.0 release. See issue #1501 for details on Metric release plans.
Released 2020-Nov-17
- Updated System.Diagnostics.DiagnosticSource to version 5.0.0
- Mark Activity extension methods as internal as these are not required to be public. GetTagValue, EnumerateTags, EnumerateLinks, EnumerateEvents. See #1544 for full changes.
- Changed SpanHelper class from public to internal. Moved SpanHelper.cs to OpenTelemetry.Api\Internal (#1555)
Released 2020-Nov-5
- Removed
IsValid
property fromStatus
(#1415) - Removed
IsOk
property fromStatus
and fixedStatusCode
enum values (#1414) B3Propagator
now supports the valuetrue
to be passed in for the headerX-B3-Sampled
. (#1413)- Moving grpc status and helper to grpc project (#1422)
- Renamed TextMapPropagator to TraceContextPropagator, CompositePropagator to CompositeTextMapPropagator. IPropagator is renamed to TextMapPropagator and changed from interface to abstract class. (#1427)
- Added GlobalPropagators API via Propagators.DefaultTextMapPropagator. (#1427)
- Changed SpanAttributeConstants from public to internal (#1457)
Released 2020-Oct-16
IActivityTagEnumerator
is nowIActivityEnumerator<T>
. AddedEnumerateLinks
extension method onActivity
for retrieving links efficiently (#1314)- Added
EnumerateEvents
extension method onActivity
for retrieving events efficiently (#1319) - Added
EnumerateTags
extension methods onActivityLink
&ActivityEvent
for retrieving tags efficiently. RenamedActivity.EnumerateTagValues
->Activity.EnumerateTags
. (#1320) - Updated System.Diagnostics.DiagnosticSource to version 5.0.0-rc.2.20475.5 (#1346)
- Updated Span Status as per new spec (#1313)
Released 2020-Sep-15
- Updated System.Diagnostics.DiagnosticSource to version 5.0.0-rc.1.20451.14 (#1265)
- Added
GetTagValue
extension method onActivity
for retrieving tag values efficiently (#1221) - Added
EnumerateTagValues
extension method onActivity
for enumerating tag values efficiently (#1236)
Released 2020-08-28
Link
andTelemetrySpan
are usingSpanAttributes
instead ofActivityTagsCollection
orDictionary
(#1120)- Added
RecordException
inTelemetrySpan
(#1116) PropagationContext
is now used instead ofActivityContext
in theITextFormat
API (#1048)- Added
BaggageFormat
anITextFormat
implementation for managing Baggage propagation via the W3C Baggage header (#1048) - Removed
DistributedContext
as it is no longer part of the spec (#1048) - Renaming from
ot
tootel
(#1046) - Added
RuntimeContext
API (#948) - Changed
Link
constructor to acceptActivityTagsCollection
instead ofIDictionary<string, object>
attributes (#954) - Added more
TelemetrySpan.SetAttribute
overloads with value of type bool, int, double (string already existed) (#954) - Changed
TelemetrySpan.SetAttribute
to match the spec (#954)- Setting an attribute with an existing key now results in overwriting it
- Setting null value has no impact except if null is set to an existing key, it gets removed
- Changed
HttpStatusCode
in all spans attribute (http.status_code) to use int value (#998) - Added
CompositePropagator
which accepts a list ofITextFormat
to match the spec (#923) - Replaced
ITextFormatActivity
withITextFormat
(#923) - Added
StartRootSpan
andStartActiveSpan
(#994) - Changed
StartSpan
to not set the created span as Active to match the spec (#994) - Updated System.Diagnostics.DiagnosticSource to version 5.0.0-preview.8.20407.11.
- Removed
CorrelationContext
and addedBaggage
, an implementation of theBaggage API
spec (#1106) - Renamed
TraceContextFormat
toTextMapPropagator
,BaggageFormat
toBaggagePropagator
, andB3Format
toB3Propagator
(#1175) - Renamed
ITextPropagator
toIPropagator
(#1190)
Released 2020-07-24
- First beta release
Released 2020-07-23
- Initial release