Struct minidump_processor::ProcessState[][src]

pub struct ProcessState {
    pub process_id: Option<u32>,
    pub time: DateTime<Utc>,
    pub process_create_time: Option<DateTime<Utc>>,
    pub crash_reason: Option<CrashReason>,
    pub crash_address: Option<u64>,
    pub assertion: Option<String>,
    pub requesting_thread: Option<usize>,
    pub threads: Vec<CallStack>,
    pub system_info: SystemInfo,
    pub modules: MinidumpModuleList,
    pub unloaded_modules: MinidumpUnloadedModuleList,
}
Expand description

The state of a process as recorded by a Minidump.

Fields

process_id: Option<u32>

The PID of the process.

time: DateTime<Utc>

When the minidump was written.

process_create_time: Option<DateTime<Utc>>

When the process started, if available

crash_reason: Option<CrashReason>

If the process crashed, a CrashReason describing the crash reason.

crash_address: Option<u64>

The memory address implicated in the crash.

If the process crashed, and if the crash reason implicates memory, this is the memory address that caused the crash. For data access errors this will be the data address that caused the fault. For code errors, this will be the address of the instruction that caused the fault.

assertion: Option<String>

A string describing an assertion that was hit, if present.

requesting_thread: Option<usize>

The index of the thread that requested a dump be written. If a dump was produced as a result of a crash, this will point to the thread that crashed. If the dump was produced as by user code without crashing, and the dump contains extended Breakpad information, this will point to the thread that requested the dump. If the dump was not produced as a result of an exception and no extended Breakpad information is present, this field will be None.

threads: Vec<CallStack>

Stacks for each thread (except possibly the exception handler thread) at the time of the crash.

system_info: SystemInfo

Information about the system on which the minidump was written.

modules: MinidumpModuleList

The modules that were loaded into the process represented by the ProcessState.

unloaded_modules: MinidumpUnloadedModuleList

Implementations

impl ProcessState[src]

pub fn crashed(&self) -> bool[src]

true if the minidump was written in response to a process crash.

pub fn print<T: Write>(&self, f: &mut T) -> Result<()>[src]

Write a human-readable description of the process state to f.

This is very verbose, it implements the output format used by minidump_stackwalk.

pub fn print_json<T: Write>(&self, f: &mut T, pretty: bool) -> Result<(), Error>[src]

Outputs json in a schema compatible with mozilla’s Socorro crash reporting servers.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

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

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

fn in_current_span(self) -> Instrumented<Self>[src]

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

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.