Repository navigation
Update opentelemetry-dotnet monorepo to 1.20.1 - #1329
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/opentelemetry-dotnet-monorepo
branch
from
July 16, 2026 12:57
fcaddc0 to
3b7a6e9
Compare
renovate
Bot
force-pushed
the
renovate/opentelemetry-dotnet-monorepo
branch
from
August 21, 2026 13:00
3b7a6e9 to
bb2e6bf
Compare
renovate
Bot
force-pushed
the
renovate/opentelemetry-dotnet-monorepo
branch
from
September 18, 2026 18:18
bb2e6bf to
4880a63
Compare
renovate
Bot
force-pushed
the
renovate/opentelemetry-dotnet-monorepo
branch
from
September 21, 2026 14:16
4880a63 to
744c3db
Compare
renovate
Bot
force-pushed
the
renovate/opentelemetry-dotnet-monorepo
branch
from
October 15, 2026 17:06
744c3db to
f573687
Compare
renovate
Bot
force-pushed
the
renovate/opentelemetry-dotnet-monorepo
branch
from
October 20, 2026 20:06
f573687 to
b7c801e
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.12.0→1.20.11.12.0→1.20.1Release Notes
open-telemetry/opentelemetry-dotnet (OpenTelemetry.Exporter.OpenTelemetryProtocol)
v1.20.1Release details: 1.20.1
HttpClientinstances created directly by the OTLPexporter no longer follow HTTP redirects. A
3xxresponse is now treated asa failed export. See the OTLP exporter README to prevent an
HttpClientcreated by
IHttpClientFactoryfrom following redirects.per destination, derived from the exporter's
Protocol,EndpointandHeaders. This prevents telemetry stored by one exporter being resent byanother exporter to its own endpoint with its own headers. Telemetry stored on
disk by earlier versions is not resent.
histogram buckets by using a pre-computed lookup table.
OTEL_EXPORTER_OTLP_ENDPOINT(and signal-specific) andOTEL_EXPORTER_ZIPKIN_ENDPOINTvalues are no longer written to theexporter's diagnostic log.
accessible to the current user only.
removed or renamed. This matters when the retry directory is shared with
other files.
symbolic links are no longer read, and subdirectories are no longer
followed when calculating the size of the directory.
non-Gregorian calendar, and fixed expired leases being located and released
incorrectly.
OTEL_DIAGNOSTICS.jsonor
SelfDiagnosticsOptions, are now always created as new files.SelfDiagnosticsOptionssinks are nowtruncated to 16,384 characters. Only the first 4 KiB of the body of an
unsuccessful OTLP export response is now read and written to the exporter's
diagnostic log.
be accessed by their owner (
0700/0600) instead of inheriting the processumask.
encoding, which reduces the size of the exported payload.
first measurement with no tags, or the first overflow measurement, at the
same time.
single write. For each client that did not read the response, the server held
a full copy of it until the request completed or timed out (for HttpListener,
only on Linux and macOS). Responses are now written in bounded slices.
and prefixed JWTs.
TracerProvider.GetTracercaching a new tracer on every call thatpasses equal array-valued scope tags.
OTLP log exporter is registered using
OpenTelemetryLoggerOptions.AddOtlpExporter.file is truncated or its volume runs out of space.
Logger.EmitLogignoringinstrumentation suppression, which could cause recursive exports or deadlocks.
holding a thread pool thread on Linux and macOS for as long as the client
kept sending the body slowly after the response was sent. The connection is
now closed after responding to a request with a body.
large value, and idle metric points with a
NaNvalue not being reclaimed.LogRecords being returned to the shared pool while still queued forexport when an exporter stops enumerating a single-item or array
Batch<LogRecord>early.SuppressInstrumentationScope.Enter()reference count never beingreleased when the
Activityit was entered for is not recorded. This causedall later telemetry in that execution context to be suppressed.
log not being bounded by the export timeout, and the body never being logged
on .NET Framework.
ToString()(for exampleenums,
UriorStringValues) being dropped when the export buffer wasresized while the attribute was being written. For metric data points, the
attribute was also left out of every later export.
diagnostic events and exceptions when supplied instead of a file path.
longorGuid, share the same built-in hash code.later OTLP exports, and
target_infoand resource constant labels from laterPrometheus scrape responses, while the
MeterProvideris being built.ObservableCounterandObservableUpDownCounteroverflow pointsreporting only the last observation instead of the sum of all observations
for each collection.
values when buffering or updating
LogRecord.State.v1.20.0Release details: 1.20.0
byte[]attributes longer than the configured attribute valuelength limit (for example
OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT) are now truncatedto that many bytes instead of being exported in full.
OTEL_EVENT_ATTRIBUTE_COUNT_LIMITandOTEL_LINK_ATTRIBUTE_COUNT_LIMITnow fall back to
OTEL_ATTRIBUTE_COUNT_LIMIT(then the default of 128) whennot set, instead of falling back to
OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT.ActivitySource.Tagsare now limited by
OTEL_ATTRIBUTE_COUNT_LIMITinstead ofOTEL_SPAN_ATTRIBUTE_COUNT_LIMIT. Only applications that setOTEL_SPAN_ATTRIBUTE_COUNT_LIMITto a different value fromOTEL_ATTRIBUTE_COUNT_LIMITare affected.
LoggerProvider's protectedTryCreateLogger(string? name, out Logger? logger)extensibility method hasbeen replaced by
TryCreateLogger(LoggerOptions options, out Logger? logger).OpenTelemetryLoggerOptions.VersionandOpenTelemetryLoggerOptions.SchemaUrloptions to set an instrumentationlibrary version and schema URL applied to logs emitted via the
Microsoft.Extensions.LoggingILoggerintegration.Logger.SchemaUrland aLoggerProvider.GetLoggeroverload acceptinga schema URL parameter using the new
LoggerOptionstype.ConsoleLogRecordExporternow writes anInstrumentation scope (Logger)section(Name, Version, and Schema URL) for each exported
LogRecord.schema_urlonScopeLogs. Log recordsemitted from a
Loggerwith a schema URL set now populateScopeLogs.schema_urlin exported OTLP requests.
disk retry feature are explicitly marked as not supported on browser-based
platforms (e.g. Blazor).
(e.g. Blazor) and are now non-functional.
TracerProviderBuilder.ConfigureSamplerintended for library authorswho need to influence sampling without overriding a sampler the application
has configured.
SuppressInstrumentationScopereference counts leaking betweeninherited asynchronous execution contexts.
ResourceBuilder.CreateDefaultignoringOTEL_RESOURCE_ATTRIBUTESandOTEL_SERVICE_NAMEenvironment variables when the hostIConfigurationdoesnot contain those settings.
the overflow point when its tag set was published as the cardinality limit was
reached.
LogRecord.CategoryNameresetting the currentLogger'sVersiontonullwhen set to a new value.Loggerscopes keyed by instrumentation toavoid unbounded growth.
MeterProviderand itsIServiceProviderbeing kept alive after thehost is disposed when using
Microsoft.Extensions.Diagnosticsversions priorto .NET 9.0.
histogram with delta temporality that could cause an empty data point to be exported.
compacting metric storage during collection.
BaggagePropagator.Injecton .NET Framework usinglookup tables.
on .NET Framework when using HTTP/protobuf with gzip compression.
OtlpExportProtocol.HttpProtobufwith
IHttpClientFactoryintegration if the first export of logs happens whilethe
IServiceProvideris being disposed. The exporter now falls back to thedefault
HttpClientinstead of failing the export.v1.19.1Release details: 1.19.1
NotSupportedExceptionthrown when building aTracerProviderorMeterProviderwith a large number of wildcard source/meter patterns onnet8.0, and a relatedOutOfMemoryExceptionthat could occur when manysuch providers were built over the lifetime of a process.
v1.19.0Release details: 1.19.0
Resourceinstances.AlwaysRecordSampler.AddOpenTelemetryextension method forIHostApplicationBuilder. Itregisters the OpenTelemetry SDK services and additionally seeds
service.namefrom
IHostEnvironment.ApplicationNameanddeployment.environment.namefromIHostEnvironment.EnvironmentNameas low-priority resource defaults. It alsoregisters the host's live configuration into DI so that extensions receiving
only
IServiceCollectioncan contribute configuration sources during setup.shapes (
IEnumerable<KeyValuePair<string, string?>>andIDictionary). Theseattributes will be serialized as JSON objects or
kvlist, as appropriate.be dropped.
environments to avoid stalled export requests when async HTTP handlers are used.
OTEL_EXPORTER_OTLP_CERTIFICATE) forPEM-encoded certificates that only contain a public key.
CircularBufferBucketsso the first delta histogram insertion after areset does not result in an unnecessary scale reduction.
initialized provider state.
tracestateheader whose member value trimmed toan empty value that previously threw an
IndexOutOfRangeExceptioninternallyand could silently truncate the tracestate.
the configured request size.
at runtime.
paramsoverload.SpanAttributesfrom an array.v1.18.0Release details: 1.18.0
64 MiB by default instead of 128 MiB to conform with the OpenTelemetry specification.
Raise the value of the new
OtlpExporterOptions.MaxRequestSizeBytespropertyto increase the capacity.
OtlpExporterOptions.MaxRequestSizeBytesto configure the maximum OTLPrequest size limit, as required by the OpenTelemetry specification. The default
is the recommended 64 MiB. A batch whose serialized payload exceeds the limit
is not sent and is dropped in its entirety. The maximum supported value is
256 MiB.
OtlpExporterOptions.MaxResponseSizeBytesto configure the maximum sizeof a response the exporter will accept, as required by the OpenTelemetry
specification. The default is the recommended 4 MiB. A response exceeding the
limit is discarded and treated as a non-retryable failure.
otel.sdk.processor.log.processedandotel.sdk.processor.span.processedSDK self-observability metrics.
the OTLP, console and Zipkin exporters.
ITelemetryHostInitializerinterface for applications that do notsupport hosted services, such as Blazor, to use to manually initialize the
OpenTelemetry SDK as part of application startup.
BatchActivityExportProcessorandSimpleActivityExportProcessorno longerforward spans to the exporter once Shutdown has been called, and
BatchActivityExportProcessor.Shutdownnow waits for in-flightOnEndcallsto finish enqueueing before flushing.
was too long to fit in the internal buffer. Such content is now truncated.
sampler attribute with the same key.
exception is thrown by their constructor after resource creation.
RecordExceptionis called on a span that is not recorded.UseOtlpExporterto respect options configured withservices.Configure<OtlpExporterOptions>(...).RetryInfo.retry_delay) toa minimum value of 100 milliseconds.
the serializer's per-thread state.
unexpected exception.
boxing.
scan of explicit bucket bounds.
maximum storage size.
header enumeration on .NET 8+.
HttpCompletionOption.ResponseHeadersReadfor the .NET Framework and .NET Standard targets.
uber-trace-idheader when targetingnet462ornetstandard2.0.v1.17.0Release details: 1.17.0
when using the Console and OTLP exporters.
ExcludedTagKeysproperty toMetricStreamConfigurationto supportexcluding specific tag keys from metric streams.
tracestatekey validation to comply with the W3C Trace ContextLevel 2 grammar.
instead of using a vendored implementation.
repeatedly created and disposed.
TraceContextPropagatorto normalize emptytracestateheader valuesto
nullwhen extracting trace context.OtlpLogExportersoOtlpExporterOptions.ExportProcessorTypeandOtlpExporterOptions.BatchExportProcessorOptionsare respected whenLogRecordExportProcessorOptionsare not configured.when persistent storage retry is enabled and an export exceeds the configured
timeout.
and metrics.
v1.16.0Release details: 1.16.0
10 million values.
BaggagePropagatorto correctly follow Key and Value Encoding rules.TraceContextPropagatorto deduplicate duplicatetracestatekeys.ObservedTimestampwill now be exported for logs in the console exporter.NullReferenceExceptionwhen exporting OTLP logs if the scope key isnull.
storage retry.
OtlpLogExporterintegration withIHttpClientFactory.IHttpClientFactorywhen mTLS isenabled.
Retry-Afterresponse headers that specify a date instead of a delay.observed_time_unix_nanowill no longer always be identical totime_unix_nanowhen using the logs bridge API.
Nameagainst the instrument namesyntax.
OTEL_BSP_*andOTEL_BLRP_*environment variables.collection cycle.
ExemplarReservoirimplementations.LoggerProviderto fail toresolve when one of its dependencies depends on
ILoggerorILoggerFactory.v1.15.3Release details: 1.15.3
tracestateparsing to reject keys that do notbegin with a lowercase letter, including keys beginning with digits, to
align with the W3C Trace Context specification.
Disk retry now requires
OTEL_DOTNET_EXPERIMENTAL_OTLP_DISK_RETRY_DIRECTORY_PATHwhen
OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=diskis configured.OtlpLogExporternow usesIHttpClientFactoryon .NET 8+.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMITnot being applied.BaggagePropagatorto trim optional whitespace (OWS) around=separators when parsing the
baggageheader.BaggagePropagatorto strip baggage properties from values whenparsing the
baggageheader.LogRecord.LogLevelto preserveLogLevel.None.OTEL_TRACES_SAMPLER_ARGhandling for out-of-range values.traces storage directory.
serialization.
v1.15.2Release details: 1.15.2
export fails and error logging is enabled.
BatchExportProcessorandPeriodicExportingMetricReaderto enable the OpenTelemetry SDK to workin single-threaded WebAssembly environments such as Blazor and
Uno Platform.
v1.15.1Release details: 1.15.1
treats baggage names and values as case sensitive, aligning with the latest
Baggage API specification.
OpenTelemetry.ApiandOpenTelemetrySDK,including fixes for thread-safety, sampler edge cases, metrics precision,
and observable instrument lifecycle handling.
v1.15.0Release details: 1.15.0
ActivitySource.TelemetrySchemaUrland
Meter.TelemetrySchemaUrlproperties across exporters.CA certificate options).
OpenTelemetry.Exporter.Zipkinis deprecated and will stop receiving updatesin December 2026. Zipkin already supports OTLP ingestion.
Migrate to
OpenTelemetry.Exporter.OpenTelemetryProtocolas statedin the Deprecating Zipkin Exporter blog post.
v1.14.0Release details: 1.14.0
net8.0, the package now depends on version8.0.0of theMicrosoft.Extensions.DependencyInjection.Abstractions,Microsoft.Extensions.Diagnostics.Abstractions,Microsoft.Extensions.Hosting.AbstractionsandMicrosoft.Extensions.Logging.ConfigurationNuGet packages.System.Diagnostics.DiagnosticSourcedependency to10.0.0for all target frameworks.
Microsoft.Extensions.*dependencies to10.0.0for .NET Framework and .NET Standard.
(
.sigstore.json) for digital signatures instead of separate signature(
.sig) and certificate (.pem) files. This requires cosign 3.0 or laterfor verification. See the Digital signing
section for updated verification instructions.
v1.13.1Release details: 1.13.1
1.13.0, the digital signature (.dll-keyless.sig) andcertificate (
.dll-keyless.pem) files were unintentionally omitted from thepublished NuGet packages.
(
net462,netstandard2.0,netstandard2.1,net8.0,net9.0), ensuringthe integrity of DLL verification using Sigstore cosign.
v1.13.0Release details: 1.13.0
OtlpExportProtocol.Grpcnow set the
TE=trailersHTTP request header to improve interoperability.EventNameis now exported by default asEventNameinstead oflogrecord.event.namewhen specified throughILoggeror the experimentallog bridge API.
Configuration
📅 Schedule: (in timezone Asia/Shanghai)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.