- Upgrade to opentelemetry 0.23. Refer to the upstream changelog for more information.
- Added gauge metrics (#129)
- Fixed compilation on WASI targets (#147)
- Set span end time when it exists (#124)
- Upgrade to opentelemetry 0.22. Refer to the upstream changelog for more information. In particular, i64 histograms will silently downgrade to key/value exports.
- Upgrade to
v0.21.0
ofopentelemetry
For list of breaking changes in OpenTelemetry, see the v0.21.0 changelog. - Update MSRV to require Rust 1.65+, as
opentelemetry
requires it now. (#68)
- WASM Support (#57)
- Fix potential deadlock (#59)
Thanks to @jesseditson, @AsmPrgmC3, and @rthomas for contributing to this release!
- Ability to produce measurement with attributes (#43)
MetricsLayer
is now generic over the itsSubscriber
impl to support per-layer filtering (#43)
- Trace IDs not matching when propagating invalid contexts (#55)
Thanks to @ymgyt and @hdost for contributing to this release!
- Add
OpenTelemetrySpanExt::set_attribute
function (#34)
- Upgrade to
v0.20.0
ofopentelemetry
(#36) For list of breaking changes in OpenTelemetry, see the v0.20.0 changelog.
Thanks to @ymgyt, @mladedav, @shaun-cox, and @Protryon for contributing to this release!
- Upgrade to
v0.19.0
ofopentelemetry
(#12) For list of breaking changes in OpenTelemetry, see the v0.19.0 changelog. - Update MSRV to require Rust 1.60+, as
opentelemetry
requires it now (#12)
Thanks to @jaysonsantos, @briankung, and @humb1t for contributing to this release!
- Upgrade to
v0.18.0
ofopentelemetry
([#2303]) For list of breaking changes in OpenTelemetry, see the v0.18.0 changelog.
on_event
respects event's explicit parent ([#2296])
Thanks to @wprzytula for contributing to this release!
This release adds optional support for recording std::error::Error
s using
[OpenTelemetry's semantic conventions for exceptions][exn-semconv].
Layer::with_exception_fields
to enable emittingexception.message
andexception.backtrace
semantic-convention fields when anError
is recorded as a span or event field (#2135)Layer::with_exception_field_propagation
to enable settingexception.message
andexception.backtrace
semantic-convention fields on the current span when an event with anError
field is recorded (#2135)
Thanks to @lilymara-onesignal for contributing to this release!
This release adds support for emitting thread names and IDs to OpenTelemetry, as
well as recording std::error::Error
values in a structured manner with their
source chain included. Additionally, this release fixes issues related to event
and span source code locations.
Layer::with_threads
to enable recording thread names/IDs according to OpenTelemetry semantic conventions (#2134)Error::source
chain when recordingstd::error::Error
values (#2122)Layer::with_location
method (replacesLayer::with_event_location
) (#2124)
std::error::Error
values are now recorded usingfmt::Display
rather thanfmt::Debug
(#2122)
- Fixed event source code locations overwriting the parent span's source location (#2099)
- Fixed
Layer::with_event_location
not controlling whether locations are emitted for spans as well as events (#2124)
Layer::with_event_location
: renamed toLayer::with_location
, as it now controls both span and event locations (#2124)
Thanks to new contributors @lilymara-onesignal, @hubertbudzynski, and @DevinCarr for contributing to this release!
This release fixes an issue introduced in v0.17.1 where
tracing-opentelemetry
could not be compiled with default-features = false
.
- Compilation failure with
tracing-log
feature disabled (#1949)
OpenTelemetryLayer
can now add detailed location information to forwarded events (defaults to on) (#1911)OpenTelemetryLayer::with_event_location
to control whether source locations are recorded (#1911)
- Avoid unnecessary allocations to improve performance when recording events (#1917)
Thanks to @djc for contributing to this release!
- Upgrade to
v0.17.0
ofopentelemetry
(#1853) For list of breaking changes in OpenTelemetry, see the v0.17.0 changelog.
- Upgrade to
v0.3.0
oftracing-subscriber
(#1677) For list of breaking changes intracing-subscriber
, see the v0.3.0 changelog.
OpenTelemetrySpanExt::add_link
method for adding a link between atracing
span and a provided OpenTelemetryContext
(#1516)
Thanks to @LehMaxence for contributing to this release!
- Upgrade to
v0.17.1
ofopentelemetry
(#1497) For list of breaking changes in OpenTelemetry, see the v0.17.1 changelog.
- Upgrade to
v0.15.0
ofopentelemetry
(#1441) For list of breaking changes in OpenTelemetry, see the v0.14.0 changelog.
- Spans now include Opentelemetry
code.namespace
,code.filepath
, andcode.lineno
attributes (#1411)
- Improve performance by pre-allocating attribute
Vec
s (#1327)
Thanks to @Drevoed, @lilymara-onesignal, and @Folyd for contributing to this release!
- Upgrade to
v0.14.0
ofopentelemetry
(#1394) For list of breaking changes in OpenTelemetry, see the v0.14.0 changelog.
- Upgrade to
v0.13.0
ofopentelemetry
(#1322) For list of breaking changes in OpenTelemetry, see the v0.13.0 changelog.
- Improve performance when tracked inactivity is disabled (#1315)
- Upgrade to
v0.12.0
ofopentelemetry
(#1200) For list of breaking changes in OpenTelemetry, see the v0.12.0 changelog.
- Upgrade to
v0.11.0
ofopentelemetry
(#1161) For list of breaking changes in OpenTelemetry, see the v0.11.0 changelog. - Update
OpenTelemetrySpanExt::set_parent
to take a context by value as it is now stored and propagated. (#1161) - Rename
PreSampledTracer::sampled_span_context
toPreSampledTracer::sampled_context
as it now returns a full otel context. (#1161)
- Track busy/idle timings as attributes via
with_tracked_inactivity
(#1096)
- Upgrade to
v0.10.0
ofopentelemetry
(#1049) For list of breaking changes in OpenTelemetry, see the v0.10.0 changelog.
- Implement additional record types (bool, i64, u64) (#1007)
- Add
PreSampledTracer
interface, removes need to specify sampler (#962)
- Connect external traces (#956)
- Assign default ids if missing (#1027)
- Upgrade to
v0.8.0
ofopentelemetry
(#932) For list of breaking changes in OpenTelemetry, see the v0.8.0 changelog.
- Upgrade to
v0.7.0
ofopentelemetry
(#867) For list of breaking changes in OpenTelemetry, see the v0.7.0 changelog.
- Support
tracing-log
special values (#735) - Support
Span::follows_from
creating otel span links (#723) - Dynamic otel span names via
otel.name
field (#732)
- Upgrade to
v0.6.0
ofopentelemetry
(#745)
- Filter out invalid parent contexts when building span contexts (#743)
tracing_opentelemetry::layer()
method to construct a default layer.OpenTelemetryLayer::with_sampler
method to configure the opentelemetry sampling behavior.OpenTelemetryLayer::new
method to configure both the tracer and sampler.
OpenTelemetrySpanExt::set_parent
now accepts a reference to an extracted parentContext
instead of aSpanContext
to match propagators.OpenTelemetrySpanExt::context
now returns aContext
instead of aSpanContext
to match propagators.OpenTelemetryLayer::with_tracer
now takes&self
as a parameter- Upgrade to
v0.5.0
ofopentelemetry
.
- Fixes bug where child spans were always marked as sampled
- Change span status code to unknown on error event
- Span extension for injecting and extracting
opentelemetry
span contexts intotracing
spans
- Disabled the
metrics
feature of the opentelemetry as it is unused.
- Update
tracing-subscriber
to 0.2.0 stable - Update to
opentelemetry
0.2.0