fix(deps): update opentelemetry-rust monorepo to 0.31.0#23
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
fix(deps): update opentelemetry-rust monorepo to 0.31.0#23renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
373b93b to
c857e0d
Compare
c857e0d to
b715219
Compare
b715219 to
7750069
Compare
7750069 to
144c17c
Compare
144c17c to
a785a63
Compare
a785a63 to
f63e2f8
Compare
f63e2f8 to
5075323
Compare
5075323 to
4fdb0a3
Compare
4fdb0a3 to
5805dfb
Compare
5805dfb to
5f9122a
Compare
5f9122a to
560701d
Compare
560701d to
65749c5
Compare
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:
0.18.0→0.31.00.11.0→0.31.0Release Notes
open-telemetry/opentelemetry-rust (opentelemetry)
v0.31.0Compare Source
Released 2025-Sep-25
opentelemetry::global::set_tracer_providerto Unit to align with metrics counterpartget_allmethod toopentelemetry::propagation::Extractorto return all values of the given propagation key and provide a default implementation.IntoIteratorimplementation foropentelemetry::trace::TraceStateto allow iterating through its key-value pair collection.v0.30.0Compare Source
Released 2025-May-23
#2821 Context
based suppression capabilities added: Added the ability to prevent recursive
telemetry generation through new context-based suppression mechanisms. This
feature helps prevent feedback loops and excessive telemetry when OpenTelemetry
components perform their own operations.
New methods added to
Context:is_telemetry_suppressed()- Checks if telemetry is suppressed in thiscontext
with_telemetry_suppressed()- Creates a new context with telemetrysuppression enabled
is_current_telemetry_suppressed()- Efficiently checks if the current thread's contexthas telemetry suppressed
enter_telemetry_suppressed_scope()- Convenience method to enter a scope where telemetry issuppressed
These methods allow SDK components, exporters, and processors to temporarily
disable telemetry generation during their internal operations, ensuring more
predictable and efficient observability pipelines.
tracingforinternal-logsfeature to remove the need of addingtracingas a dependencyv0.29.1Compare Source
Release 2025-Apr-01
WithContextatopentelemetry::trace::context::WithContext#2879 to restore backwards compatibilityWithContextandFutureExtare inopentelemetry::contextas they are independent of the trace signal. Users should prefer this path.v0.29.0Compare Source
Released 2025-Mar-21
ExportErrortrait fromopentelemetry::trace::ExportErrortoopentelemetry_sdk::export::ExportErrorTraceErrorenum fromopentelemetry::trace::TraceErrortoopentelemetry_sdk::trace::TraceErrorTraceResulttype alias fromopentelemetry::trace::TraceResulttoopentelemetry_sdk::trace::TraceResultInstrumentationScopeimplementation forPartialEqandHashfixed to include Attributes also.BaggagefromValuetoStringValueBaggageconstants to reflect latest standard (MAX_KEY_VALUE_PAIRS- 180 -> 64,MAX_BYTES_FOR_ONE_PAIR- removed) and increased insert performance see #2284.Baggage.remove()signature with.get()to take the key as a referenceBaggagecan't be retrieved from theContextdirectly anymore and needs to be accessed viacontext.baggage()with_baggage()andcurrent_with_baggage()override any existingBaggagein theContextBaggagekeys can't be empty and only allow ASCII visual chars, except"(),/:;<=>?@​[\]{}(see RFC7230, Section 3.2.6)KeyValueMetadatadoes not publicly expose its fields. This should be transparent change to the users.Contextto use a stack to properly handle out of order dropping ofContextGuard. This imposes a limit of65535nested contexts on a single thread. See #2378 and #1887.name: Option<&str>parameter to theevent_enabledmethodon the
Loggertrait. This allows implementations (SDK, processor, exporters)to leverage this additional information to determine if an event is enabled.
v0.28.0Compare Source
Released 2025-Feb-10
opentelemetry::global::shutdown_tracer_provider()Removed from this crate, should now usetracer_provider.shutdown()see #2369 for a migration example.opentelemetry::PropagationErrorstruct.v0.27.1Compare Source
Released 2024-Nov-27
v0.27.0Compare Source
Released 2024-Nov-11
LogRecord::set_trace_context; an optional method conditional on thetracefeature for setting trace context on a log record.as_anyfromAsyncInstrumenttrait and the implementing instruments:ObservableCounter,ObservableGauge, andObservableUpDownCounter#2187SyncInstrumenttrait to replace the individual synchronous instrument traits (SyncCounter,SyncGauge,SyncHistogram,SyncUpDownCounter) which are meant for SDK implementation. #2207observemethod on asynchronous instruments can only be called inside a callback. This was done by removing the implementation ofAsyncInstrumenttrait for each of the asynchronous instruments. #2210PartialOrdandOrdimplementations forKeyValue. #2215KeyValuerelated structs and enums asnon_exhaustive. #2228AnyValueenum asnon_exhaustive. #2230initmethod used to create instruments has been renamed tobuild. Also,try_init()method is removed from instrument builders. The return types ofInstrumentProvidertrait methods modified to return the instrument struct, instead ofResult. #2227Before:
Now:
Breaking change: #2220
InstrumentationLibrary::newInstrumentationLibrarytoInstrumentationScopeInstrumentationLibraryBuildertoInstrumentationScopeBuilderLoggerProvider::versioned_loggerandTracerProvider::versioned_tracerLoggerProvider::logger_builder,TracerProvider::tracer_builderandMeterProvider::versioned_meterLoggerProvider::logger_with_scope,TracerProvider::logger_with_scope,MeterProvider::meter_with_scopeglobal::meter_with_versionwithglobal::meter_with_scopeglobal::tracer_with_scopeBreaking change: replaced
InstrumentationScopepublic attributes by getters #2275Breaking change: #2260
global::set_error_handlerandglobal::handle_error.global::handle_errorusage inside the opentelemetry crates has been replaced withglobal::otel_info,otel_warn,otel_debugandotel_errormacros based on the severity of the internal logs.global::handle_errorwas to log the error usingeprintln!. With otel macros, the internal logs get emitted viatracingmacros of matching severity. Users now need to configure atracinglayer/subscriber to capture these logs.tracing::fmtlayer.Breaking change for exporter/processor authors: #2266
ExportErrortrait fromopentelemetry::ExportErrortoopentelemetry_sdk::export::ExportErroropentelemetry::trace::ExportErrorfor trace API. This would be eventually be consolidated with ExportError in the SDK.LogErrorenum fromopentelemetry::logs::LogErrortoopentelemetry_sdk::logs::LogErrorLogResulttype alias fromopentelemetry::logs::LogResulttoopentelemetry_sdk::logs::LogResultMetricErrorenum fromopentelemetry::metrics::MetricErrortoopentelemetry_sdk::metrics::MetricErrorMetricResulttype alias fromopentelemetry::metrics::MetricResulttoopentelemetry_sdk::metrics::MetricResultThese changes shouldn't directly affect the users of OpenTelemetry crate, as these constructs are used in SDK and Exporters. If you are an author of an sdk component/plug-in, like an exporter etc. please use these types from sdk. Refer CHANGELOG.md for more details, under same version section.
Breaking 2291 Rename
logs_level_enabled flagtospec_unstable_logs_enabled. Please enable this updated flag if the feature is needed. This flag will be removed once the feature is stabilized in the specifications.v0.26.0Compare Source
Released 2024-Sep-30
BREAKING Public API changes:
Removed:
Key.bool(),Key.i64(),Key.f64(),Key.string(),Key.array()#2090. These APIs were redundant as they didn't offer any additional functionality. The existingKeyValue::new()API covers all the scenarios offered by these APIs.Removed:
ObjectSafeMeterProviderandGlobalMeterProvider#2112. These APIs were unnecessary and were mainly meant for internal use.Modified:
MeterProvider.meter()andMeterProvider.versioned_meter()argument types have been updated to&'static strinstead ofimpl Into<Cow<'static, str>>>#2112. These APIs were modified to enforce the Metername,version, andschema_urlto be&'static str.Renamed:
NoopMeterCoretoNoopMeterAdded
with_boundariesAPI to allow users to provide custom bounds for Histogram instruments. #2135v0.25.0Compare Source
Before:
After:
So the custom log appenders should box these types while adding them in message body, or
attribute values. Similarly, the custom exporters should dereference these complex type values
before serializing.
Breaking :
#2015 Removed
the ability to register callbacks for Observable instruments on Meter directly.
If you were using
meter.register_callbackto provide the callback, providethem using
with_callbackmethod, while creating the Observable instrumentitself.
1715
shows the exact changes needed to make this migration. If you are starting new,
refer to the
examples
to learn how to provide Observable callbacks.
v0.24.0Compare Source
Add "metrics", "logs" to default features. With this, default feature list is
"trace", "metrics" and "logs".
When "metrics" feature is enabled,
KeyValueimplementsPartialEq,Eq,PartialOrder,Order,Hash. This is meant to be used for metricsaggregation purposes only.
Removed
Unitstruct for specifying Instrument units. Unit is treated as anopaque string. Migration: Replace
.with_unit(Unit::new("myunit"))with.with_unit("myunit").1869 Introduced the
LogRecord::set_target()method in the log bridge API.This method allows appenders to set the target/component emitting the logs.
v0.23.0Compare Source
Added
PropagationErrorGaugeno longer requiresotel-unstablefeature flag, as OpenTelemetry specification forGaugeinstrument is stable.Removed
urlencodingcrate dependency. #1613LoggerProviders are not meant for end users to get loggers from. It is only required for the log bridges.
Below global constructs for the logs are removed from API:
- opentelemetry::global::logger
- opentelemetry::global::set_logger_provider
- opentelemetry::global::shutdown_logger_provider
- opentelemetry::global::logger_provider
- opentelemetry::global::GlobalLoggerProvider
- opentelemetry::global::ObjectSafeLoggerProvider
For creating appenders using Logging bridge API, refer to the opentelemetry-tracing-appender example
Changed
BREAKING Moving LogRecord implementation to the SDK. 1702.
LogRecordstruct to SDK.LogRecordtrait in the API for populating log records. This trait is implemented by the SDK.This is the breaking change for the authors of Log Appenders. Refer to the opentelemetry-appender-tracing for more details.
Deprecate
versioned_logger()in favor oflogger_builder()1567.Before:
After:
versioned_tracer()in favor oftracer_builder()1567.Before:
After:
v0.22.0Compare Source
Added
#1410 Add experimental synchronous gauge. This is behind the feature flag, and can be enabled by enabling the feature
otel_unstablefor opentelemetry crate.#1410 Guidelines to add new unstable/experimental features.
Changed
AnyValue.Mapto be backed byHashMapinstead of customOrderMap,which internally used
IndexMap. There was no requirement to maintain the orderof entries, so moving from
IndexMaptoHashMapoffers slight performancegains, and avoids
IndexMapdependency. This affectsbodyandattributesofLogRecord.#1353
TextMapCompositePropagator#1373NoopLoggerto save on operations#1455
Removed
OrderMaptype as there was no requirement to use this over regularHashMap.#1353
global::shutdown_meter_provider, useSdkMeterProvider::shutdowndirectly instead #1412.
v0.21.0Compare Source
This release should been seen as 1.0-rc4 following 1.0-rc3 in v0.20.0. Refer to CHANGELOG.md in individual creates for details on changes made in different creates.
Changed
opentelemetrycrate now only carries the API types #1186. Use theopentelemetry_sdkcrate for the SDK types.trace::noop::NoopSpanno longer implementsDefaultand instead exposesa
const DEFAULTvalue. #1270#1256
SpanBuilderattributes changed fromOrderMap<Key, Value>toVec<KeyValue>andwith_attributes_mapmethod is removed fromSpanBuilder.This implies that OpenTelemetry API will no longer perform
de-dup of attribute Keys.
#1293.
Please share feedback
here, if
you are affected.
v0.20.0Compare Source
This release should been seen as 1.0-rc3 following 1.0-rc2 in v0.19.0. Refer to CHANGELOG.md in individual creates for details on changes made in different creates.
Added
newmethod toBoxedTracer#1009Context::map_current#1140opentelemetry::sdk::logs::config()for parity withopentelemetry::sdk::trace::config()(#1197)Changed
OtelString::OwnedcarriesBox<str>instead ofString#1096Removed
Contextwhile reportingmeasurements. #1076.
futures-channelerror types toLogErrorandTraceErrorremoved.#1201
Fixed
SpanRef::set_attributesmutability requirement. #1038v0.19.0Compare Source
This release should been seen as 1.0-rc2 following 1.0-rc1 in v0.18.0. Refer to CHANGELOG.md in individual creates for details on changes made in different creates.
Added
WithContextto public api #893.Changed
DisplayonBaggage#921.open-telemetry/opentelemetry-rust (opentelemetry-prometheus)
v0.31.0Compare Source
opentelemetrydependency version to 0.31.0opentelemetry_sdkdependency version to 0.31.0opentelemetry-semantic-conventionsdependency version to 0.31.0v0.29.1Compare Source
Released 2025-April-11
prometheusdependency version to 0.14protobufdependencyv0.29.0Compare Source
opentelemetrydependency version to 0.29opentelemetry_sdkdependency version to 0.29opentelemetry-semantic-conventionsdependency version to 0.29v0.28.0Compare Source
opentelemetrydependency version to 0.28opentelemetry_sdkdependency version to 0.28opentelemetry-semantic-conventionsdependency version to 0.28v0.27.0Compare Source
opentelemetrydependency version to 0.27opentelemetry_sdkdependency version to 0.27opentelemetry-semantic-conventionsdependency version to 0.27v0.17.0Compare Source
Changed
opentelemetrydependency version to 0.24opentelemetry_sdkdependency version to 0.24opentelemetry-semantic-conventionsdependency version to 0.16v0.16.0Compare Source
Added
ResourceSelectorto allow attaching resource as attributes to metrics #1608Changed
opentelemetrydependency version to 0.23opentelemetry_sdkdependency version to 0.23v0.15.0Changed
otel_scope_infoandotel_target_infometrics #1428v0.14.1Fixed
v0.14.0Compare Source
Changed
v0.13.0Compare Source
Added
with_namespaceoption to exporter config.without_counter_suffixesoption to exporter config.Changed
v0.12.0Compare Source
Changed
_totalsuffix for all counters #952.opentelemetryv0.19.otel_scope_infoandscopelabels #974.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, 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.