Struct TransactionContext
pub struct TransactionContext { /* private fields */ }
Expand description
The Transaction Context used to start a new Performance Monitoring Transaction.
The Transaction Context defines the metadata for a Performance Monitoring Transaction, and also the connection point for distributed tracing.
Implementations§
§impl TransactionContext
impl TransactionContext
pub fn new(name: &str, op: &str) -> TransactionContext
pub fn new(name: &str, op: &str) -> TransactionContext
Creates a new Transaction Context with the given name
and op
.
See https://docs.sentry.io/platforms/native/enriching-events/transaction-name/
for an explanation of a Transaction’s name
, and
https://develop.sentry.dev/sdk/performance/span-operations/ for conventions
around an operation
’s value.
See also the TransactionContext::continue_from_headers
function that
can be used for distributed tracing.
pub fn continue_from_headers<'a, I>(
name: &str,
op: &str,
headers: I,
) -> TransactionContext
pub fn continue_from_headers<'a, I>( name: &str, op: &str, headers: I, ) -> TransactionContext
Creates a new Transaction Context based on the distributed tracing headers
.
The headers
in particular need to include the sentry-trace
header,
which is used to associate the transaction with a distributed trace.
pub fn continue_from_span(
name: &str,
op: &str,
span: Option<TransactionOrSpan>,
) -> TransactionContext
pub fn continue_from_span( name: &str, op: &str, span: Option<TransactionOrSpan>, ) -> TransactionContext
Creates a new Transaction Context based on an existing Span.
This should be used when an independent computation is spawned on another thread and should be connected to the calling thread via a distributed tracing transaction.
pub fn set_sampled(&mut self, sampled: impl Into<Option<bool>>)
pub fn set_sampled(&mut self, sampled: impl Into<Option<bool>>)
Set the sampling decision for this Transaction.
This can be either an explicit boolean flag, or None
, which will fall
back to use the configured traces_sample_rate
option.
pub fn custom_mut(&mut self) -> &mut Option<Map<String, Value>>
pub fn custom_mut(&mut self) -> &mut Option<Map<String, Value>>
Update the custom context of this Transaction.
For simply adding a key, use the custom_insert
method.
pub fn custom_insert(&mut self, key: String, value: Value) -> Option<Value>
pub fn custom_insert(&mut self, key: String, value: Value) -> Option<Value>
Inserts a key-value pair into the custom context.
If the context did not have this key present, None is returned.
If the context did have this key present, the value is updated, and the old value is returned.
Trait Implementations§
§impl Clone for TransactionContext
impl Clone for TransactionContext
§fn clone(&self) -> TransactionContext
fn clone(&self) -> TransactionContext
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for TransactionContext
impl RefUnwindSafe for TransactionContext
impl Send for TransactionContext
impl Sync for TransactionContext
impl Unpin for TransactionContext
impl UnwindSafe for TransactionContext
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)