OpenTelemetry - CNCF/opentelemetry-dotnet: Release 1.0.0-rc2
Name: opentelemetry-dotnet
Owner: OpenTelemetry - CNCF
Release: 1.0.0-rc2
Released: 2021-01-30
License: Apache-2.0
Release Assets:
OpenTelemetry
- The following extension methods on
ResourceBuilder
has been moved from theOpenTelemetry
namespace to theOpenTelemetry.Resources
namespace:AddEnvironmentVariableDetector
,AddAttributes
,AddService
, andAddTelemetrySdk
. (#1576) - 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) - Modified SimpleExportProcessor and BatchExportProcessor to abstract classes; Added SimpleActivityExportProcessor, SimpleLogRecordExportProcessor, BatchActivityExportProcessor, BatchLogRecordExportProcessor; Added the check for Activity.Recorded in SimpleActivityExportProcessor and BatchActivityExportProcessor (#1622)
- Added check in
ActivitySourceAdapter
class for root activity if traceid is overridden by callingSetParentId
(#1355) - Resource Attributes now accept int, short, and float as values, converting them to supported data types (long for int/short, double for float). For invalid attributes we now throw an exception instead of logging an error. (#1720)
- Merging "this" resource with an "other" resource now prioritizes the "other" resource's attributes in a conflict. We've rectified to follow a recent change to the spec. We previously prioritized "this" resource's tags. (#1728)
BatchExportProcessor
will now flush any remaining spans left in aBatch
after the export operation has completed. (#1726)- Fixed a bug to allow the Self Diagnostics log file to be opened simutaneously by another process in read-only mode for .NET Framework. (#1693)
- Metrics removed as it is not part 1.0.0 release. See issue #1501 for details on Metric release plans.
- Fix Resource attribute telemetry.sdk.version to have correct file version.
OpenTelemetry.Api
- 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)- Metrics removed as it is not part 1.0.0 release. See issue #1501 for details on Metric release plans.
- Relax System.Diagnostics.DiagnosticSource version requirement to allow versions >=5.0. Previously only versions up to 6.0 (excluding 6.0) was allowed.
OpenTelemetry.Exporter.Console
AddConsoleExporter
extension method for logs moved fromOpenTelemetry.Trace
namespace toOpenTelemetry.Logs
namespace. (#1576)Added
ConsoleActivityExporter
andConsoleLogExporter
. RefactoredConsoleExporter
to get rid of type specific check in the class (#1593)Replaced Debug.WriteLine with Trace.WriteLine to display the logs to the Debug window with Release configuration (#1719)
OpenTelemetry.Exporter.InMemory
AddInMemoryExporter
extension method for traces moved fromOpenTelemetry
namespace toOpenTelemetry.Trace
namespace. (#1576)AddInMemoryExporter
extension method for logs moved fromMicrosoft.Extensions.Logging
namespace toOpenTelemetry.Logs
namespace. (#1576)
OpenTelemetry.Exporter.Jaeger
Changed
JaegerExporter
class and constructor from internal to public. (#1612)In
JaegerExporterOptions
: Exporter options now include a switch for Batch vs Simple exporter, and settings for batch exporting properties.Jaeger will now set the
error
tag whenotel.status_code
is set toERROR
. (#1579 & #1620)Jaeger will no longer send the
otel.status_code
tag if the value isUNSET
. (#1609 & #1620)Span Event.Name will now be populated as the
event
field on Jaeger Logs instead ofmessage
. (#1609)JaegerExporter
batch format has changed to be compliant with the spec. This may impact the way spans are displayed in Jaeger UI. (#1732)
OpenTelemetry.Exporter.OpenTelemetryProtocol
Changed
OltpTraceExporter
class and constructor from internal to public. (#1612)In
OtlpExporterOptions.cs
: Exporter options now include a switch for Batch vs Simple exporter, and settings for batch exporting properties.Introduce a
netstandard2.1
build enabling the exporter to use the gRPC for .NET library instead of the gRPC for C# library for .NET Core 3.0+ applications. This required some breaking changes to theOtlpExporterOptions
. (#1662)
OpenTelemetry.Exporter.Zipkin
Changed
ZipkinExporter
class and constructor from internal to public. (#1612)Zipkin will now set the
error
tag to theStatus.Description
value or an empty string whenStatus.StatusCode
(otel.status_code
tag) is set toERROR
. (#1579, #1620, & #1655)Zipkin will no longer send the
otel.status_code
tag if the value isUNSET
. (#1609 & #1620)Zipkin bool tag values will now be sent as
true
/false
instead ofTrue
/False
. (#1609)Span tags will no longer be populated with Resource Attributes. (#1663)
Spans will no longer be held in memory indefinitely when
ZipkinExporter
cannot connect to the configured endpoint. (#1726)
OpenTelemetry.Exporter.ZPages
OpenTelemetry.Extensions.Hosting
OpenTelemetry.Instrumentation.AspNet
OpenTelemetry.Instrumentation.AspNetCore
OpenTelemetry.Instrumentation.GrpcNetClient
OpenTelemetry.Instrumentation.Http
otel.status_description
tag will no longer be set to the http status description/reason phrase for outgoing http spans. (#1579)Moved the DiagnosticListener filtering logic from HttpClientInstrumentation ctor to OnStartActivity method of HttpHandlerDiagnosticListener.cs; Updated the logic of OnStartActivity to inject propagation data into Headers for filtered out events as well. (#1707)
OpenTelemetry.Instrumentation.SqlClient
- Microsoft.Data.SqlClient v2.0.0 and higher is now properly instrumented on .NET Framework. (#1599)
- SqlClientInstrumentationOptions API changes:
SetStoredProcedureCommandName
andSetTextCommandContent
have been renamed toSetDbStatementForStoredProcedure
andSetDbStatementForText
. They are now only available on .NET Core. On .NET Framework they are replaced by a singleSetDbStatement
property. - On .NET Framework, "db.statement_type" attribute is no longer set for activities created by the instrumentation.
- New setting on SqlClientInstrumentationOptions on .NET Core:
RecordException
can be set to instruct the instrumentation to record SqlExceptions as Activity events. (#1592)
OpenTelemetry.Instrumentation.StackExchangeRedis
OpenTelemetry.Shims.OpenTracing
- Made the following shim classes internal:
ScopeManagerShim
,SpanBuilderShim
,SpanContextShim
,SpanShim
. (#1619)