Releases: open-telemetry/opentelemetry-dotnet-instrumentation
Releases · open-telemetry/opentelemetry-dotnet-instrumentation
v0.5.1-beta.2
Added
- Add support for
OTEL_TRACES_SAMPLER
andOTEL_TRACES_SAMPLER_ARG
. - Add
Initializing
plugin extension point
that is invoked before OpenTelemetry SDK configuration.
0.5.1-beta.1
This beta release is built on top of OpenTelemetry .NET:
- Core components:
1.4.0-beta.3
System.Diagnostics.DiagnosticSource
:7.0.0
Added
- Add support for
OTEL_BSP_SCHEDULE_DELAY
,OTEL_BSP_EXPORT_TIMEOUT
,OTEL_BSP_MAX_QUEUE_SIZE
,OTEL_BSP_MAX_EXPORT_BATCH_SIZE
. - Add support for
OTEL_METRIC_EXPORT_TIMEOUT
. - Add support for
OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT
,OTEL_ATTRIBUTE_COUNT_LIMIT
,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT
,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT
,OTEL_SPAN_EVENT_COUNT_LIMIT
,OTEL_SPAN_LINK_COUNT_LIMIT
,OTEL_EVENT_ATTRIBUTE_COUNT_LIMIT
,OTEL_LINK_ATTRIBUTE_COUNT_LIMIT
forotlp
exporter.
Changed
- Updated Core components:
1.4.0-beta.3
- Updated plugins method signature to overwrite OpenTelemetry .NET SDK exporters' and instrumentations' options.
ConfigureOptions
changed toConfigureTracesOptions
,ConfigureMetricsOptions
orConfigureLogsOptions
.
v0.5.0
The is the first production-ready (non-beta) release. It is not stable yet.
Added
- Add support for .NET 7.
- Add support for
OTEL_DOTNET_AUTO_LOGS_ENABLED
. - Add error log if bytecode instrumentation type is missing all instrumentation methods.
- Plugins can overwrite OpenTelemetry .NET SDK exporters' and instrumentations' options.
Changed
- Replace
OTEL_DOTNET_AUTO_LOAD_TRACER_AT_STARTUP
withOTEL_DOTNET_AUTO_TRACES_ENABLED
andOTEL_DOTNET_AUTO_LOAD_METER_AT_STARTUP
withOTEL_DOTNET_AUTO_METRICS_ENABLED
. - Disable OpenTracing by default. OpenTracing can be re-enabled via
OTEL_DOTNET_AUTO_OPENTRACING_ENABLED
. - GraphQL exceptions are recorded as OTel events.
DOTNET_STARTUP_HOOKS
required value changed to$INSTALL_DIR/net/OpenTelemetry.AutoInstrumentation.StartupHook.dll
.
Removed
- Remove support for .NET Core 3.1.
- Remove support for
OTEL_DOTNET_AUTO_HTTP2UNENCRYPTEDSUPPORT_ENABLED
. - Remove support for
OTEL_DOTNET_AUTO_ENABLED
. UseCORECLR_ENABLE_PROFILING
orCOR_ENABLE_PROFILING
instead. - Remove support for
OTEL_DOTNET_AUTO_INCLUDE_PROCESSES
.
Fixed
- Fix the IIS registration in the PowerShell script module for Windows Server 2016.
- Fix the IIS unregistration in the PowerShell script module.
- Get rid of unnecessary service restarts during the IIS unregistration, in the PowerShell script module.
OTEL_DOTNET_AUTO_TRACES_ENABLED
is also respected by bytecode instrumentations.
v0.4.0-beta.1
Added
- Add WCF traces instrumentation (server-side for .NET Framework, client-side for both .NET Core and .NET Framework).
- Support ASP.NET Core OpenTelemetry Log exporter related environment variables:
OTEL_LOGS_EXPORTER
,OTEL_DOTNET_AUTO_LOGS_CONSOLE_EXPORTER_ENABLED
,OTEL_DOTNET_AUTO_LOGS_ENABLED_INSTRUMENTATIONS
,OTEL_DOTNET_AUTO_LOGS_DISABLED_INSTRUMENTATIONS
,OTEL_DOTNET_AUTO_LOGS_INCLUDE_FORMATTED_MESSAGE
.
- Support
OTEL_DOTNET_AUTO_GRAPHQL_SET_DOCUMENT
(default value:false
) environment variable which controls whethergraphql.document
attribute is set. - Add ILogger logging instrumentation for .NET Core 3.1+.
- Add telemetry resource attributes.
- Add support for the
b3
propagator. - Add MassTransit traces instrumentation.
- Add
OpenTelemetry.AutoInstrumentation
Nuget package. - Support for Process metrics collection using the
OpenTelemetry.Instrumentation.Process
package. - Add Shell scripts for downloading and installing OpenTelemetry .NET Automatic Instrumentation and instrumenting .NET applications.
- Add PowerShell script module for downloading and installing OpenTelemetry .NET Automatic Instrumentation and instrumenting .NET applications.
Changed
- Replaced
OTEL_DOTNET_AUTO_TRACES_PLUGINS
andOTEL_DOTNET_AUTO_METRICS_PLUGINS
with new environment variableOTEL_DOTNET_AUTO_PLUGINS
. - Adjusted tags for MongoDB integration. See pull request for more details.
- Extend MySql.Data traces instrumentation for versions 8.0.31+. Versions 8.0.31+ require bytecode instrumentation.
Removed
- Removed support for MongoDB integration for MongoDB.Driver.Core prior to 2.13.3.
Fixed
- Log folder structure is fully created on Linux.
- Update GraphQL instrumentation to follow the OpenTelemetry semantic conventions.
- Fixed the race between requesting ReJIT of methods targeted for bytecode instrumentation and their first execution. The race allowed, in rare occasions, for the first few executions of the method to not be instrumented. See issue #1242.
- Span kind for GraphQL instrumentation is set as span property instead of attribute.
v0.3.1-beta.1
This release is built on top of OpenTelemetry .NET:
- Core components:
1.3.1
System.Diagnostics.DiagnosticSource
:6.0.0
Added
- Add support for Alpine.
- Add strong name signature to the OpenTelemetry.AutoInstrumentation assembly used
on the .NET Framework.
Changed
- Extend StackExchange.Redis traces instrumentation for versions 2.6.66+.
- Updated Core components:
1.3.1
v0.3.0-beta.1
This release add various new instrumentations and more propagation options.
Added
- Add Grpc.Net.Client traces instrumentation.
- Add MySql.Data traces instrumentation.
- Add Npgsql traces instrumentation.
- Add StackExchange.Redis traces instrumentation.
- Add configuration option
none
toOTEL_DOTNET_AUTO_TRACES_ENABLED_INSTRUMENTATIONS
andOTEL_DOTNET_AUTO_METRICS_ENABLED_INSTRUMENTATIONS
. - Add support for the
b3multi
propagator. - Add support for the
OTEL_PROPAGATORS
environment variable.
Supported configuration options areb3multi
,baggage
,tracecontext
.
Default istracecontext,baggage
.
Changed
- Renamed
OTEL_DOTNET_AUTO_TRACES_ENABLED
toOTEL_DOTNET_AUTO_ENABLED
since it
controls enabling or disabling the CLR profiler independent of the signal type. OTEL_DOTNET_AUTO_TRACES_ENABLED_INSTRUMENTATIONS
default value is changed to
include all of the available instrumentations.OTEL_DOTNET_AUTO_METRICS_ENABLED_INSTRUMENTATIONS
default value is changed to
include all of the available instrumentations.- Changed Tracing sampler from
always_on
toparentbased_always_on
.
See the OpenTelemetry specification
for more details.
Removed
- Remove
OTEL_DOTNET_AUTO_DOMAIN_NEUTRAL_INSTRUMENTATION
configuration
as it is not needed. - Remove
OTEL_DOTNET_AUTO_{0}_ENABLED
configuration,
useOTEL_DOTNET_AUTO_[TRACES/METRICS]_[ENABLED/DISABLED]_INSTRUMENTATIONS
instead. - Remove
OTEL_DOTNET_AUTO_METRICS_ENABLED
configuration as it is not needed.
0.2.0-beta.1
The main feature of this release is the support for the metrics signal.
This release is built on top of OpenTelemetry .NET:
- Core components:
1.3.0
System.Diagnostics.DiagnosticSource
:6.0.0
You can find all OpenTelemetry references in
OpenTelemetry.AutoInstrumentation.csproj.
Added
- Adds MongoDB instrumentation support from .NET Core 3.1+.
- Support for OpenTelemetry metric exporter related environment variables:
OTEL_DOTNET_AUTO_METRICS_ENABLED
,OTEL_DOTNET_AUTO_LOAD_METER_AT_STARTUP
,OTEL_METRICS_EXPORTER
,OTEL_DOTNET_AUTO_METRICS_CONSOLE_EXPORTER_ENABLED
,OTEL_DOTNET_AUTO_METRICS_ENABLED_INSTRUMENTATIONS
,OTEL_DOTNET_AUTO_METRICS_DISABLED_INSTRUMENTATIONS
,OTEL_DOTNET_AUTO_METRICS_PLUGINS
,OTEL_DOTNET_AUTO_METRICS_ADDITIONAL_SOURCES
.
- Support for .NET Runtime metrics collection using
theOpenTelemetry.Instrumentation.Runtime
package. - Support for ASP.NET and HttpClient metrics instrumentations.
- Support for Prometheus Exporter HttpListener version.
OTEL_DOTNET_AUTO_INTEGRATIONS_FILE
can accept multiple filepaths
delimted by the platform-specific path separator
(;
on Windows,:
on Linux and macOS).- Support for metric exporter interval using environment variable:
OTEL_METRIC_EXPORT_INTERVAL
.
Changed
- Rename generic environment variables to include trace.
OTEL_DOTNET_AUTO_ENABLED
→OTEL_DOTNET_AUTO_TRACES_ENABLED
,OTEL_DOTNET_AUTO_LOAD_AT_STARTUP
→OTEL_DOTNET_AUTO_LOAD_TRACER_AT_STARTUP
,OTEL_DOTNET_AUTO_CONSOLE_EXPORTER_ENABLED
→OTEL_DOTNET_AUTO_TRACES_CONSOLE_EXPORTER_ENABLED
,OTEL_DOTNET_AUTO_ENABLED_INSTRUMENTATIONS
→OTEL_DOTNET_AUTO_TRACES_ENABLED_INSTRUMENTATIONS
,OTEL_DOTNET_AUTO_DISABLED_INSTRUMENTATIONS
→OTEL_DOTNET_AUTO_TRACES_DISABLED_INSTRUMENTATIONS
,OTEL_DOTNET_AUTO_INSTRUMENTATION_PLUGINS
→OTEL_DOTNET_AUTO_TRACES_PLUGINS
,OTEL_DOTNET_AUTO_ADDITIONAL_SOURCES
→OTEL_DOTNET_AUTO_TRACES_ADDITIONAL_SOURCES
.
Removed
- Support for .NET 5.0
Fixed
- Use
,
as seperator, as documented, instead of;
, for:OTEL_DOTNET_AUTO_INCLUDE_PROCESSES
,OTEL_DOTNET_AUTO_EXCLUDE_PROCESSES
,OTEL_DOTNET_AUTO_TRACES_DISABLED_INSTRUMENTATIONS
.
- Remove invalid instrumentation for
MongoDB.Driver.Core
<2.3.0.
0.1.0-beta.1
The is an initial, official beta release,
built on top of OpenTelemetry .NET:
- Core components:
1.2.0
- Non-core components:
1.0.0-rc9.2
System.Diagnostics.DiagnosticSource
:6.0.0
Added
- Support for .NET Framework 4.6.2 and higher.
- Support for .NET Core 3.1.
- Support for .NET 5.0 and 6.0.
- ASP.NET and ASP.NET Core source instrumentations.
- GraphQL bytecode instrumentation.
- Microsoft.Data.SqlClient
and System.Data.SqlClient
source instrumentation. - OTLP, Jaeger, Zipkin and Console trace exporters.
- Global management using environment variables:
OTEL_DOTNET_AUTO_HOME
,OTEL_DOTNET_AUTO_ENABLED
,
OTEL_DOTNET_AUTO_INCLUDE_PROCESSES
,OTEL_DOTNET_AUTO_EXCLUDE_PROCESSES
,
OTEL_DOTNET_AUTO_AZURE_APP_SERVICES
. - Support for OpenTelemetry resource environment variables:
OTEL_RESOURCE_ATTRIBUTES
,OTEL_SERVICE_NAME
. - Instrumentation management using environment variables:
OTEL_DOTNET_AUTO_INTEGRATIONS_FILE
,OTEL_DOTNET_AUTO_ENABLED_INSTRUMENTATIONS
,
OTEL_DOTNET_AUTO_DISABLED_INSTRUMENTATIONS
,
OTEL_DOTNET_AUTO_{0}_ENABLED
,
OTEL_DOTNET_AUTO_DOMAIN_NEUTRAL_INSTRUMENTATION
,
OTEL_DOTNET_AUTO_CLR_DISABLE_OPTIMIZATIONS
,
OTEL_DOTNET_AUTO_CLR_ENABLE_INLINING
,
OTEL_DOTNET_AUTO_CLR_ENABLE_NGEN
. - Support for OpenTelemetry exporter related environment variables:
OTEL_TRACES_EXPORTER
,
OTEL_EXPORTER_OTLP_PROTOCOL
, - Customization and plugin capabilities which can be configured
using the following environment variables:
OTEL_DOTNET_AUTO_LOAD_AT_STARTUP
,
OTEL_DOTNET_AUTO_ADDITIONAL_SOURCES
,
OTEL_DOTNET_AUTO_LEGACY_SOURCES
,
OTEL_DOTNET_AUTO_INSTRUMENTATION_PLUGINS
. OTEL_DOTNET_AUTO_HTTP2UNENCRYPTEDSUPPORT_ENABLED
environment variable
which enablesSystem.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport
.
See the official Microsoft documentation
for more details.