pub struct RiTraceContext {
pub version: u8,
pub trace_id: RiTraceId,
pub parent_id: RiSpanId,
pub trace_flags: u8,
pub trace_state: Option<String>,
}Expand description
W3C Trace Context propagation format
This struct represents a W3C Trace Context, which is used to propagate trace information across service boundaries. It follows the W3C Trace Context specification: https://www.w3.org/TR/trace-context/
Fields§
§version: u8Trace context version
trace_id: RiTraceIdTrace ID for the entire trace
parent_id: RiSpanIdParent span ID
trace_flags: u8Trace flags (bitmask)
trace_state: Option<String>Optional trace state for vendor-specific information
Implementations§
Source§impl RiTraceContext
impl RiTraceContext
Sourcepub fn from_header(header: &str) -> Option<Self>
pub fn from_header(header: &str) -> Option<Self>
Sourcepub fn to_header(&self) -> String
pub fn to_header(&self) -> String
Converts the trace context to a W3C Trace Context header string.
§Returns
A string in the format “00-{trace-id}-{parent-id}-{trace-flags}”
Sourcepub fn is_sampled(&self) -> bool
pub fn is_sampled(&self) -> bool
Sourcepub fn set_sampled(&mut self, sampled: bool)
pub fn set_sampled(&mut self, sampled: bool)
Sets the sampled flag on the trace context.
§Parameters
sampled: Whether the trace should be sampled
Trait Implementations§
Source§impl Clone for RiTraceContext
impl Clone for RiTraceContext
Source§fn clone(&self) -> RiTraceContext
fn clone(&self) -> RiTraceContext
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RiTraceContext
impl Debug for RiTraceContext
Source§impl Default for RiTraceContext
impl Default for RiTraceContext
Source§impl<'de> Deserialize<'de> for RiTraceContext
impl<'de> Deserialize<'de> for RiTraceContext
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<'py> IntoPyObject<'py> for RiTraceContext
impl<'py> IntoPyObject<'py> for RiTraceContext
Source§type Target = RiTraceContext
type Target = RiTraceContext
The Python output type
Source§type Output = Bound<'py, <RiTraceContext as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <RiTraceContext as IntoPyObject<'py>>::Target>
The smart pointer type to use. Read more
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Performs the conversion.
Source§impl PyClass for RiTraceContext
impl PyClass for RiTraceContext
Source§impl PyClassImpl for RiTraceContext
impl PyClassImpl for RiTraceContext
Source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
#[pyclass(subclass)]
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
#[pyclass(extends=…)]
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
#[pyclass(mapping)]
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
#[pyclass(sequence)]
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
#[pyclass(immutable_type)]
Source§const RAW_DOC: &'static CStr = c"W3C Trace Context propagation format\n\nThis struct represents a W3C Trace Context, which is used to propagate trace information\nacross service boundaries. It follows the W3C Trace Context specification: https://www.w3.org/TR/trace-context/\x00"
const RAW_DOC: &'static CStr = c"W3C Trace Context propagation format\n\nThis struct represents a W3C Trace Context, which is used to propagate trace information\nacross service boundaries. It follows the W3C Trace Context specification: https://www.w3.org/TR/trace-context/\x00"
Docstring for the class provided on the struct or enum. Read more
Source§const DOC: &'static CStr
const DOC: &'static CStr
Fully rendered class doc, including the
text_signature if a constructor is defined. Read moreSource§type ThreadChecker = SendablePyClass<RiTraceContext>
type ThreadChecker = SendablePyClass<RiTraceContext>
This handles following two situations: Read more
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Immutable or mutable
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
The closest native ancestor. This is
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
fn dict_offset() -> Option<isize>
fn weaklist_offset() -> Option<isize>
Source§impl PyClassNewTextSignature for RiTraceContext
impl PyClassNewTextSignature for RiTraceContext
const TEXT_SIGNATURE: &'static str = "()"
Source§impl PyMethods<RiTraceContext> for PyClassImplCollector<RiTraceContext>
impl PyMethods<RiTraceContext> for PyClassImplCollector<RiTraceContext>
fn py_methods(self) -> &'static PyClassItems
Source§impl PyTypeInfo for RiTraceContext
impl PyTypeInfo for RiTraceContext
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Returns the PyTypeObject instance for this type.
§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
Returns the safe abstraction over the type object.
§fn is_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_type_of(object: &Bound<'_, PyAny>) -> bool
Checks if
object is an instance of this type or a subclass of this type.§fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
Checks if
object is an instance of this type.Source§impl Serialize for RiTraceContext
impl Serialize for RiTraceContext
impl DerefToPyAny for RiTraceContext
impl ExtractPyClassWithClone for RiTraceContext
Auto Trait Implementations§
impl Freeze for RiTraceContext
impl RefUnwindSafe for RiTraceContext
impl Send for RiTraceContext
impl Sync for RiTraceContext
impl Unpin for RiTraceContext
impl UnsafeUnpin for RiTraceContext
impl UnwindSafe for RiTraceContext
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
Converts
self into an owned Python object, dropping type information.§fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
Converts
self into an owned Python object, dropping type information and unbinding it
from the 'py lifetime.§fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
Converts
self into a Python object. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PyErrArguments for T
impl<T> PyErrArguments for T
§impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
§const NAME: &'static str = T::NAME
const NAME: &'static str = T::NAME
👎Deprecated since 0.27.0: Use ::classinfo_object() instead and format the type name at runtime. Note that using built-in cast features is often better than manual PyTypeCheck usage.
Name of self. This is used in error messages, for example.
§fn type_check(object: &Bound<'_, PyAny>) -> bool
fn type_check(object: &Bound<'_, PyAny>) -> bool
§fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
Returns the expected type as a possible argument for the
isinstance and issubclass function. Read more