Releases: open-telemetry/opentelemetry-dotnet
1.3.0-beta.1 of Core
Starting the 1.3.0-beta series. No code updates in this release.
1.2.0 of Core Components
1st Stable Release of Metrics SDK.
Same as 1.2.0-rc5, except the following changes.
OpenTelemetry
- Make setter for
MetricReaderOptions.PeriodicExportingMetricReaderOptions
property public.
(#3184)
OpenTelemetry.Exporter.OpenTelemetryProtocol
1.0.0-rc9.2 of non-core
Same bits as previous release (1.0.0-rc9.1), except bumps the requires core package versions to be 1.2.0-rc5
1.2.0-rc5 of Core Components
This is the final RC for 1.2.0 release.
OpenTelemetry
-
Removed the
Temporality
setting onMetricReader
and replaced it with
TemporalityPreference
. This is a breaking change.
TemporalityPreference
is used to determine theAggregationTemporality
used on a per-instrument kind basis. Currently, there are two preferences:Cumulative
: Measurements from all instrument kinds are aggregated using
AggregationTemporality.Cumulative
.Delta
: Measurements fromCounter
,ObservableCounter
, andHistogram
instruments are aggregated usingAggregationTemporality.Delta
. When
UpDownCounters are supported with
DiagnosticSource version 7.0 onwards,
they will be aggregated usingAggregationTemporality.Cumulative
.
(#3153)
-
Fix issue where
ExplicitBucketHistogramConfiguration
could be used to
configure metric streams for instruments that are not histograms. Currently,
it is not possible to change the aggregation of an instrument with views. This
may be possible in the future.
(#3126) -
Conformed to the specification to ensure that each view that an instrument
matches results in a new metric stream. With this change it is possible for
views to introduce conflicting metric streams. Any conflicts encountered will
result in a diagnostic log.
(#3148)
OpenTelemetry.Api
OpenTelemetry.Exporter.Console
OpenTelemetry.Exporter.InMemory
OpenTelemetry.Exporter.Jaeger
OpenTelemetry.Exporter.OpenTelemetryProtocol
- Updated underlying proto files to
v0.16.0.
The LogRecord.Name field was removed. The CategoryName provided
when calling CreateLogger previously populated this field. For now,
CategoryName is no longer exported via OTLP. It will be reintroduced
in the future as an attribute.
OpenTelemetry.Exporter.Prometheus
OpenTelemetry.Exporter.Zipkin
1.0.0-rc9.1 of non-core componets
This is mostly just changing the versioning.
This version is 1.0.0-rc9.1, with next releases taking 1.0.0-rc9.2, 1.0.0-rc9.3 and so on. The previous version 1.0.0-rc10 is invalid, and will be unlisted.
See discussion on this: #2991 (comment)
Changes:
OpenTelemetry.Exporter.OpenTelemetryProtocol.Logs
OpenTelemetry.Exporter.ZPages
OpenTelemetry.Extensions.Hosting
OpenTelemetry.Instrumentation.AspNet
OpenTelemetry.Instrumentation.AspNet.TelemetryHttpModule
OpenTelemetry.Instrumentation.AspNetCore
OpenTelemetry.Instrumentation.GrpcNetClient
OpenTelemetry.Instrumentation.Http
- Updated
TracerProviderBuilderExtensions.AddHttpClientInstrumentation
to support
IDeferredTracerProviderBuilder
andIOptions<HttpClientInstrumentationOptions>
(#3051)
OpenTelemetry.Instrumentation.SqlClient
OpenTelemetry.Instrumentation.StackExchangeRedis
OpenTelemetry.Shims.OpenTracing
1.2.0-rc4 of core components
OpenTelemetry
-
The
PeriodicExportingMetricReader
now accepts an
ExportIntervalMilliseconds
of-1
indicating an infinite export interval
period.
(#2982) -
Added the
PeriodicExportingMetricReaderOptions.ExportTimeoutMilliseconds
option.
(#3038) -
Removed
MetricReaderType
. This enumeration was previously used when
configuing a metric reader with an exporter to configure whether the export
cycle would be periodic or manual (i.e., requiring a explicit call to flush
metrics). This change affects the push-based metric exporters: OTLP, Console,
and InMemory. For these exporters, a manual export cycle can now be achieved
by settingPeriodicExportingMetricReaderOptions.ExportIntervalMilliseconds
to-1
.
(#3038) -
Marked members of the
MetricPoint
struct
which do not mutate state as
readonly
(#3065) -
[Bug fix] OpenTelemetryLoggerProvider is now unaffected by changes to
OpenTelemetryLoggerOptions after the LoggerFactory is built.
(#3055)
OpenTelemetry.Api
OpenTelemetry.Exporter.Console
-
Added StatusCode, StatusDescription support to
ConsoleActivityExporter
.
(#2929
#3061) -
AddConsoleExporter
extension method by default sets up exporter
to export metrics every 10 seconds.
OpenTelemetry.Exporter.InMemory
OpenTelemetry.Exporter.Jaeger
- Added support for Activity Status and StatusDescription which were
added to Activity fromSystem.Diagnostics.DiagnosticSource
version 6.0.
Prior to version 6.0, setting the status of an Activity was provided by the
.NET OpenTelemetry API via theActivity.SetStatus
extension method in the
OpenTelemetry.Trace
namespace. Internally, this extension method added the
status as tags on the Activity:otel.status_code
andotel.status_description
.
Therefore, to maintain backward compatibility, the exporter falls back to using
these tags to infer status.
(#3073)
OpenTelemetry.Exporter.OpenTelemetryProtocol
-
Added support for Activity Status and StatusDescription which were
added to Activity fromSystem.Diagnostics.DiagnosticSource
version 6.0.
Prior to version 6.0, setting the status of an Activity was provided by the
.NET OpenTelemetry API via theActivity.SetStatus
extension method in the
OpenTelemetry.Trace
namespace. Internally, this extension method added the
status as tags on the Activity:otel.status_code
andotel.status_description
.
Therefore, to maintain backward compatibility, the exporter falls back to using
these tags to infer status.
(#3100) -
Fixed OTLP metric exporter to default to a periodic 60 second export cycle.
A bug was introduced in #2717 that caused the OTLP metric export to default
to a manual export cycle (i.e., requiring an explicit flush). A workaround
for this bug has been provided
here.
(#2982) -
Bumped minimum required gRPC version (2.23.0 to 2.44.0).
Fixes issues building on Apple Silicon (M1).
(#2963) -
Fixed issue where the configuration of an OTLP exporter could be changed
after instantiation by altering the originalOtlpExporterOptions
provided.
(#3066) -
TraceExporter to stop populating
DeprecatedCode
in OTLP Status.
OpenTelemetry.Exporter.Prometheus
OpenTelemetry.Exporter.Zipkin
- Added support for Activity Status and StatusDescription which were
added to Activity fromSystem.Diagnostics.DiagnosticSource
version 6.0.
Prior to version 6.0, setting the status of an Activity was provided by the
.NET OpenTelemetry API via theActivity.SetStatus
extension method in the
OpenTelemetry.Trace
namespace. Internally, this extension method added the
status as tags on the Activity:otel.status_code
andotel.status_description
.
Therefore, to maintain backward compatibility, the exporter falls back to using
these tags to infer status.
(#3003)
1.0.0-rc10 of non-core
Most packages have no change from previous release. Only updates to use the newest API/SDK reference.
OpenTelemetry.Extensions.Hosting
- Fixes an issue where the initialization of some aspects of the SDK can be
delayed when using theAddOpenTelemetryTracing
and
AddOpenTelemetryMetrics
methods. Namely, self-diagnostics and the default
context propagator responsible for propagating trace context and baggage.
(#2901)
OpenTelemetry.Instrumentation.AspNet
OpenTelemetry.Instrumentation.AspNet.TelemetryHttpModule
OpenTelemetry.Instrumentation.AspNetCore
OpenTelemetry.Instrumentation.GrpcNetClient
OpenTelemetry.Instrumentation.Http
OpenTelemetry.Instrumentation.SqlClient
OpenTelemetry.Instrumentation.StackExchangeRedis
OpenTelemetry.Shims.OpenTracing
1.2.0-RC3 of core components
OpenTelemetry
-
Instantiating multiple metric instruments with the same name and also
identical in all other respects - same type, description, and unit - result
in a single metric stream aggregating measurements from all the identical
instruments.Instantiating multiple metric instruments with the same name but differ in
some respect - different type, description, or unit - will result in a
separate metric stream for each distinct instrument.(#2916)
-
The
Meter
property onOpenTelemetry.Metrics.Metric
has been removed.
It now hasMeterName
andMeterVersion
properties.
(#2916) -
Added support for implementing custom
ResourceDetector
.
(#2949
#2897) -
Perf improvement for Histogram and HistogramSumCount by implementing lock-free
updates.
(#2951
#2961)
OpenTelemetry.Api
- Improved wildcard support for
AddSource
,AddMeter
to cover?
(which
matches exactly one character).
(#2875)
OpenTelemetry.Exporter.Console
- Removes metric related configuration options from
ConsoleExporterOptions
.
MetricReaderType
,PeriodicExporterMetricReaderOptions
, andTemporality
are now configurable via theMetricReaderOptions
.
(#2929)
OpenTelemetry.Exporter.InMemory
- Adds the ability to configure
MetricReaderOptions
via the
AddInMemoryExporter
extension method.
(#2931)
OpenTelemetry.Exporter.Jaeger
- Change supported values for
OTEL_EXPORTER_JAEGER_PROTOCOL
Supported values:udp/thrift.compact
andhttp/thrift.binary
defined
in the specification.
(#2914) - Change handling of
OTEL_EXPORTER_JAEGER_ENDPOINT
to require the path to
post. Previous versions of this library would append/api/traces
to the
value specified in this variable, but now the application author must do so.
This change must also be made if you manually configure the
JaegerExporterOptions
class - theEndpoint
must now include the path.
For most environments, this will be/api/traces
. The effective default
is stillhttp://localhost:14268/api/traces
. This was done to match
the clarified specification)
(#2847)
OpenTelemetry.Exporter.OpenTelemetryProtocol
-
LogExporter bug fix to handle null EventName.
(#2871) -
Fixed the default endpoint for OTLP exporter over HTTP/Protobuf.
The default value ishttp://localhost:4318
.
(#2868) -
Removes metric related configuration options from
OtlpExporterOptions
.
MetricReaderType
,PeriodicExporterMetricReaderOptions
, andTemporality
are now configurable via theMetricReaderOptions
.
(#2717) -
Exporter bug fix to not throw exceptions from Export method.
(#2915) -
OTLP LogExporter modified to not drop the whole batch if a single log from the
batch is invalid.
(#2934)
OpenTelemetry.Exporter.OpenTelemetryProtocol.Logs
OpenTelemetry.Exporter.Prometheus
OpenTelemetry.Exporter.Zipkin
- Modified Export method to catch all exceptions.
(#2935)
1.0.0-rc9 of Instrumentation libraries and other non-core components
Instrumentation Libraries, OT shim, Hosting packages.
Refer to individual changelog.md files for details.
1.2.0-rc2 of core components
API, SDK, and Exporters.
Refer to individual changelog.md files for details.