0.38.0
OpenTelemetry integration
An OpenTelemetry integration has been released. Please refer to the changelog entry below for the details.
Breaking changes
- refactor(tracing): remove
EventFilter::exception
and always attach exception (#768) by @lcian- The
EventFilter::Exception
enum variant has been removed. Please useEventFilter::Event
instead to achieve the same behavior. - Using
EventFilter::Event
will always attach any error struct used within theerror
field passed to thetracing
macro, asEventFilter::Exception
did previously. - The
error
field will also be attached to breadcrumbs as anerrors
field resembling the structure of Sentry events created from error structs.
- The
- fix: use
release-health
flag insentry-actix
and remove it from subcrates where unneeded (#787) by @lcian- As a follow-up from the changes in the previous release, the
ClientOptions
fieldsauto_session_tracking
andsession_mode
are now gated behind therelease-health
feature flag of thesentry
crate. - If you depend on
sentry
withdefault-features = false
, you need to include therelease-health
feature flag to benefit from the Release Health features of Sentry and have access to the aforementioned client options. - The
release-health
feature flag is used correctly insentry-actix
to enable compilation of that subcrate when it's disabled. - The
release-health
has been removed from thesentry-tracing
andsentry-tower
subcrates, where it was unnecessary.
- As a follow-up from the changes in the previous release, the
- refactor: remove Surf transport (#766) by @lcian
- The Surf transport has been removed as the
surf
crate is unmaintained and it was holding back dependency upgrades. - If you really want to still use Surf, you can define a custom
TransportFactory
and pass it as thetransport
in yourClientOptions
- The Surf transport has been removed as the
Behavioral changes
- refactor: honor
send_default_pii
insentry-actix
andsentry-tower
(#771) by @lcian- The client option
send_default_pii
(disabled by default) is now honored bysentry-actix
andsentry-tower
. - This means that potentially sensitive headers such as authorization, cookies, and those that usually contain the user's IP address are filtered and not sent to Sentry.
- If you want to get back to the previous behavior and capture all headers, please set
send_default_pii
totrue
in yourClientOptions
. - Please refer to our Data Collected page for a comprehensive view of the data collected by the SDK.
- The client option
- refactor(debug-images): force init
DEBUG_META
on integration init (#773) by @lcian- The
DebugImages
integration has been updated to init theDEBUG_META
Lazy
immediately. - Using this integration is known to cause issues in specific versions of the Linux kernel due to issues in a library it depends on.
- Previously, on problematic systems the SDK would cause deadlock after capturing the first event. Now the SDK will panic on initialization instead. Please open an issue if you're affected.
- The
Features
- feat(otel): add OpenTelemetry SpanProcessor, Propagator, Extractor (#779) by @lcian
- A new integration for the
opentelemetry
crate has been released. - It can be used to capture spans created using the
opentelemetry
API and send them to Sentry. - Distributed tracing is also supported, provided that the upstream/downstream services support the Sentry or W3C distributed tracing metadata format.
- Please refer to the subcrate's README or the crate docs to see an example of setup and usage.
- A new integration for the
- feat: expose
sentry-actix
as a feature ofsentry
(#788) by @lciansentry-actix
is now exposed by thesentry
crate assentry::integrations::actix
, gated behind theactix
feature flag.- Please update your dependencies to not depend on the
sentry-actix
subcrate directly.
Dependencies
- build(deps): bump openssl from 0.10.71 to 0.10.72 (#762) by @dependabot
- build(deps): bump tokio from 1.44.1 to 1.44.2 (#763) by @dependabot
- chore(deps): bump some dependencies and update
Cargo.lock
(#772) by @lcian
Various fixes & improvements
- Replace
once_cell
withstd::sync::LazyLock
(#776) by @FalkWoldmann - chore: update GH issue templates for Linear compatibility (#777) by @stephanie-anderson
- chore: update issue templates with blank issue and Discord link (#778) by @lcian
- refactor(core): fail with message if TLS backend not available (#784) by @lcian
- build: add
sentry-opentelemetry
to workspace (#789) by @lcian - docs: update docs including OTEL and other integrations (#790) by @lcian
- fix(otel): fix doctests (#794) by @lcian
- fix(otel): fix span and trace ids for distributed tracing (#801) by @lcian
- build(otel): exclude version from circular dev-dependencies (#802) by @lcian