Skip to content

Releases: open-telemetry/opentelemetry-rust

v0.18.0

13 Sep 02:44
d4b9bef
Compare
Choose a tag to compare

Added

  • Pull sampling probability from OTEL_TRACES_SAMPLER_ARG in default sdk config #737
  • Add schema_url to Tracer #743
  • Add schema_url to Resource #775
  • Add Span::set_attributes #638
  • Support concurrent exports #781
  • Add jaeger remote sampler #797
  • Allow Custom Samplers #833
  • Add SpanExporter::force_flush and default implementation #845

Changed

  • Deprecate metrics ValueRecorder in favor of Histogram #728
  • Move IdGenerator to SDK, rename to RandomIdGenerator #742
  • meter_with_version accepts optional parameter for version and schema_url #752
  • Unify Event and Link access patterns #757
  • move SpanKind display format impl to jaeger crate #758
  • make TraceStateError private #755
  • rename Span::record_exception to Span::record_error #756
  • Replace StatusCode and message with Status #760
  • Move TracerProvider::force_flush to SDK #658
  • Switch to static resource references #790
  • Allow O(1) get operations for SpanBuilder::attributes [breaking] #799
  • Allow ref counted keys and values #821
  • Bump MSRV from 1.49 to 1.55 #811
  • bump MSRV to 1.56 #866
  • Update metrics API and SDK for latest spec #819
  • Switch to pin-project-lite #830

Fixed

  • Update dashmap to avoid soundness hole #818
  • Perform sampling as explained in the specification #839
  • Remove internal message queue between exporter and exporting tasks #848
  • Fix span processor exporting unsampled spans #871

Removed

  • Remove serialize feature #738
  • Remove StatusCode::as_str #741
  • Remove Tracer::with_span #746

v0.17.0

22 Jan 17:06
d719eae
Compare
Choose a tag to compare

Changed

  • Implement Serialize & Deserialize for Sampler, SpanLimits #622, #626
  • Allow &'static str and string in span methods #654
  • Allow String data in instrumentation library. #670
  • Remove std::fmt::Debug and 'static requirements from TracerProvider,
    Tracer, and Span #664
  • Remove unused Tracer::invalid method #683
  • Split TracerProvider::tracer and TracerProvider::versioned_tracer methods #682
  • Reduce dependency on futures crate #684
  • Switch to parent context references #687
  • Spec-compliant trace and span ids #689
  • Optimize span creation internals #693
  • Add instrumentation library to ShouldSample parameters #695

Fixed

  • Fix default resource detection for tracer provider #641
  • Detect service.name from OTEL_SERVICE_NAME and OTEL_RESOURCE_ATTRIBUTES #662
  • Fix TraceState::valid_key crashes #665

v0.16.0

07 Aug 18:25
4a649ea
Compare
Choose a tag to compare

Changed

  • Add default resource in TracerProvider #571
  • Rename get_tracer to tracer #586
  • Extract trace::noop module and update docs #587
  • Add Hash impl for span context and allow spans to clone and export current state #592
  • Enforce span status code's order #593
  • Make SpanRef public #600
  • Make SpanProcessor::on_start take a mutable span #601
  • Renamed label to attribute to align with otel specification #609

Performance

  • Small performance boost for Resource::get #579

v0.15.0

17 Jun 16:30
d7ba1ea
Compare
Choose a tag to compare

Added

  • More resource detectors #573

Changed

  • Expose the Error type to allow users to set custom error handlers #551
  • Allow users to use different channels based on runtime in batch span processor #560
  • Move Unit into metrics module #564
  • Update trace flags to match spec #565

Fixed

  • Fix debug loop, add notes for #[tokio::test] #552
  • TraceState cannot insert new key-value pairs #567

v0.14.0

13 Jun 20:30
133ab27
Compare
Choose a tag to compare

Added

  • Adding a dynamic dispatch to Aggregator Selector #497
  • Add global::force_flush_tracer_provider #512
  • Add config max_attributes_per_event and max_attributes_per_link #521
  • Add dropped attribute counts to events and links #529

Changed

  • Remove unnecessary clone in Key type #491
  • Remove #[must_use] from set_tracer_provider #501
  • Rename remaining usage of default_sampler to sampler #509
  • Use current span for SDK-less context propagation #510
  • Always export span batch when limit reached #519
  • Rename message events to events #530
  • Update resource merge behaviour #537
  • Ignore links with invalid context #538

Removed

  • Remove remote span context #508
  • Remove metrics quantiles #525

Fixed

  • Allow users to use custom export kind selector #526

Performance

  • Improve simple span processor performance #502
  • Local span perf improvements #505
  • Reduce string allocations where possible #506

v0.13.0

24 Mar 02:27
97c220f
Compare
Choose a tag to compare

Upgrade note: exporter pipelines do not return an uninstall guard as of #444, use opentelemetry::global::shutdown_tracer_provider explicitly instead.

Changed

  • Pull configrations from environment variables by default when creating BatchSpanProcessor #445
  • Convert doc links to intra-doc #466
  • Switch to Cow for event names #471
  • Use API to configure async runtime instead of features #481
  • Rename trace config with_default_sampler to with_sampler #482

Removed

  • Removed tracer provider guard #444
  • Removed from_env and use environment variables to initialize the configurations by default #459

v0.12.0

22 Jan 01:58
f0bdd11
Compare
Choose a tag to compare

Added

  • Instrumentation library support #402
  • Batch observer support #429
  • with_unit methods in metrics #431

Changed

  • Dependencies updates #410
  • Add Send, Sync to AsyncInstrument in metrics #422
  • Add Send, Sync to InstrumentCore in metrics #423
  • Replace regex with custom logic #411
  • Update tokio to v1 #421

Removed

  • Moved http dependencies into a new opentelemetry-http crate #415
  • Remove tonic dependency #414

v0.11.2

01 Jan 01:38
cc57185
Compare
Choose a tag to compare

Fixed

  • Fix possible deadlock when dropping metric instruments #407

v0.11.1

29 Dec 23:03
2e32e41
Compare
Choose a tag to compare

Fixed

  • Fix remote implicit builder context sampling #405

v0.11.0

28 Dec 23:56
ddcf8a4
Compare
Choose a tag to compare

Added

  • Add force_flush method to span processors #358
  • Add timeout for force_flush and shutdown #362

Changed

  • Implement Display trait for Key and Value types #353
  • Remove Option from Array values #359
  • Update ShouldSample's parent parameter to be Context #368
  • Consolidate error types in trace module into TraceError #371
  • Add #[must_use] to uninstall structs #372
  • Move 3rd party propagators and merge exporter into sdk::export #375
  • Add instrumentation version to instrument config #392
  • Use instrumentation library in metrics #393
  • start_from_context renamed to start_with_context #399
  • Removed build_with_context as full context is now stored in builder #399
  • SpanBuilder's with_parent renamed to with_parent_context #399

Fixed

  • Fix parent based sampling in tracer #354
  • StatusCode enum value ordering #377
  • Counter adding the delta from last collection #395
  • HistogramAggregator returning sum vs count #398