Releases: open-telemetry/opentelemetry-dotnet
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.
1.2.0-rc1 - Core components
OpenTelemetry
-
Prevent accessing activity Id before sampler runs in case of legacy
activities.
(2659) -
Added
ReadOnlyTagCollection
and exposeTags
onMetricPoint
instead of
Keys
+Values
(#2642) -
Refactored
MetricPoint
and added public methods:GetBucketCounts
,
GetExplicitBounds
,GetHistogramCount
, andGetHistogramSum
(#2657) -
Remove MetricStreamConfiguration.Aggregation, as the feature to customize
aggregation is not implemented yet.
(#2660) -
Removed the public property
HistogramMeasurements
and added a public method
GetHistogramBuckets
instead. Renamed the classHistogramMeasurements
to
HistogramBuckets
and added an enumerator of typeHistogramBucket
for
enumeratingBucketCounts
andExplicitBounds
. RemovedGetBucketCounts
and
GetExplicitBounds
methods fromMetricPoint
.
(#2664) -
Refactored temporality setting to align with the latest spec.
(#2666) -
Removed the public properties
LongValue
,DoubleValue
, in favor of their
counterpart public methodsGetSumLong
,GetSumDouble
,
GetGaugeLastValueLong
,GetGaugeLastValueDouble
.
(#2667) -
MetricType modified to reserve bits for future types.
(#2693)
OpenTelemetry.Api
OpenTelemetry.Exporter.Console
- Added configuration options for
MetricReaderType
to allow for configuring
theConsoleMetricExporter
to export either manually or periodically.
(#2648)
OpenTelemetry.Exporter.InMemory
OpenTelemetry.Exporter.Jaeger
OpenTelemetry.Exporter.OpenTelemetryProtocol
-
Added configuration options for
MetricReaderType
to allow for configuring
theOtlpMetricExporter
to export either manually or periodically.
(#2674) -
The internal log message used when OTLP export client connection failure occurs,
will now include the endpoint uri as well.
(#2686) -
Support
HttpProtobuf
protocol with metrics & addedHttpClientFactory
option
(#2696)
OpenTelemetry.Exporter.Prometheus
- Bug fix for handling Histogram with empty buckets.
(#2651)
1.2.0-beta2 of core components
Please note that "1.2.0-beta2.1" is the version of the nugets.
OpenTelemetry
-
Renamed
HistogramConfiguration
toExplicitBucketHistogramConfiguration
and changed its memberBucketBounds
toBoundaries
.
(#2638) -
Metrics with the same name but from different meters are allowed.
(#2634) -
Metrics SDK will not provide inactive Metrics to delta exporter.
(#2629) -
Histogram bounds are validated when added to a View.
(#2573) -
Changed
BatchExportActivityProcessorOptions
constructor to throw
FormatException
if it fails to parse any of the supported environment
variables. -
Added
BaseExporter.ForceFlush
.
(#2525) -
Exposed public
Batch(T[] items, int count)
constructor onBatch<T>
struct
(#2542) -
Added wildcard support for AddMeter.
(#2459) -
Add support for multiple Metric readers
(#2596) -
Add ability to configure MaxMetricStreams, MaxMetricPointsPerMetricStream
(#2635)
OpenTelemetry.Api
- Updated System.Diagnostics.DiagnosticSource to version 6.0.0.
(#2582)
OpenTelemetry.Exporter.Console
OpenTelemetry.Exporter.InMemory
OpenTelemetry.Exporter.Jaeger
-
Changed
JaegerExporterOptions
constructor to throw
FormatException
if it fails to parse any of the supported environment
variables. -
Added support for sending spans directly to a Jaeger Collector over HTTP
(#2574)
OpenTelemetry.Exporter.OpenTelemetryProtocol
-
Changed
OtlpExporterOptions
constructor to throw
FormatException
if it fails to parse any of the supported environment
variables. -
Changed
OtlpExporterOptions.MetricExportIntervalMilliseconds
to default
60000 milliseconds.
(#2641)
OpenTelemetry.Exporter.Prometheus
- Added scrape endpoint response caching feature &
ScrapeResponseCacheDurationMilliseconds
option
(#2610)
OpenTelemetry.Exporter.Zipkin
- Changed
ZipkinExporterOptions
constructor to throw
FormatException
if it fails to parse any of the supported environment
variables.
New Contributors
- @rkbodenner made their first contribution in #2488
- @ndrwrbgs made their first contribution in #2550
- @cartermp made their first contribution in #2603
- @chertby made their first contribution in #2630
- @svetlanabrennan made their first contribution in #2641