Skip to main content

blaze_symbolizer_dispatch

Struct blaze_symbolizer_dispatch 

Source
#[repr(C)]
pub struct blaze_symbolizer_dispatch { pub dispatch_cb: unsafe extern "C" fn(maps_file: *const c_char, symbolic_path: *const c_char, ctx: *mut c_void) -> *mut c_char, pub ctx: *mut c_void, }
Expand description

Configuration for custom process member dispatch.

When provided to blaze_symbolizer_opts via process_dispatch, the callback is invoked for each process member that has a file path during process symbolization. It allows the caller to provide an alternative ELF file path for symbolization. For example, the path may be fetched via debuginfod.

The callback receives the /proc/<pid>/map_files/... path and the symbolic path from /proc/<pid>/maps, along with the user-provided context pointer (ctx).

The callback should return one of:

  • A malloc’d path string to an alternative ELF file to use for symbolization. The library will free this string after use.
  • NULL to use the default symbolization behavior for this member.

Fields§

§dispatch_cb: unsafe extern "C" fn(maps_file: *const c_char, symbolic_path: *const c_char, ctx: *mut c_void) -> *mut c_char

The dispatch callback function. Must not be NULL.

§ctx: *mut c_void

Opaque context pointer passed to dispatch_cb.

Trait Implementations§

Source§

impl Debug for blaze_symbolizer_dispatch

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more