Struct relay_event_schema::protocol::Exception
source · pub struct Exception {
pub ty: Annotated<String>,
pub value: Annotated<JsonLenientString>,
pub module: Annotated<String>,
pub stacktrace: Annotated<Stacktrace>,
pub raw_stacktrace: Annotated<RawStacktrace>,
pub thread_id: Annotated<ThreadId>,
pub mechanism: Annotated<Mechanism>,
pub other: Object<Value>,
}
Expand description
A single exception.
Multiple values inside of an event represent chained exceptions and should be sorted oldest to newest. For example, consider this Python code snippet:
try:
raise Exception("random boring invariant was not met!")
except Exception as e:
raise ValueError("something went wrong, help!") from e
Exception
would be described first in the values list, followed by a description of ValueError
:
{
"exception": {
"values": [
{"type": "Exception": "value": "random boring invariant was not met!"},
{"type": "ValueError", "value": "something went wrong, help!"},
]
}
}
Fields§
§ty: Annotated<String>
Exception type, e.g. ValueError
.
At least one of type
or value
is required, otherwise the exception is discarded.
value: Annotated<JsonLenientString>
Human readable display value.
At least one of type
or value
is required, otherwise the exception is discarded.
module: Annotated<String>
The optional module, or package which the exception type lives in.
stacktrace: Annotated<Stacktrace>
Stack trace containing frames of this exception.
raw_stacktrace: Annotated<RawStacktrace>
Optional unprocessed stack trace.
thread_id: Annotated<ThreadId>
An optional value that refers to a thread.
mechanism: Annotated<Mechanism>
Mechanism by which this exception was generated and handled.
other: Object<Value>
Additional arbitrary fields for forwards compatibility.
Trait Implementations§
source§impl FromValue for Exception
impl FromValue for Exception
source§fn from_value(__value: Annotated<Value>) -> Annotated<Self>
fn from_value(__value: Annotated<Value>) -> Annotated<Self>
source§impl IntoValue for Exception
impl IntoValue for Exception
source§fn into_value(self) -> Value
fn into_value(self) -> Value
source§fn serialize_payload<S>(
&self,
__serializer: S,
__behavior: SkipSerialization,
) -> Result<S::Ok, S::Error>where
Self: Sized,
S: Serializer,
fn serialize_payload<S>(
&self,
__serializer: S,
__behavior: SkipSerialization,
) -> Result<S::Ok, S::Error>where
Self: Sized,
S: Serializer,
source§fn extract_child_meta(&self) -> MetaMapwhere
Self: Sized,
fn extract_child_meta(&self) -> MetaMapwhere
Self: Sized,
§fn extract_meta_tree(value: &Annotated<Self>) -> MetaTreewhere
Self: Sized,
fn extract_meta_tree(value: &Annotated<Self>) -> MetaTreewhere
Self: Sized,
source§impl ProcessValue for Exception
impl ProcessValue for Exception
source§fn value_type(&self) -> EnumSet<ValueType>
fn value_type(&self) -> EnumSet<ValueType>
source§fn process_value<P>(
&mut self,
__meta: &mut Meta,
__processor: &mut P,
__state: &ProcessingState<'_>,
) -> ProcessingResultwhere
P: Processor,
fn process_value<P>(
&mut self,
__meta: &mut Meta,
__processor: &mut P,
__state: &ProcessingState<'_>,
) -> ProcessingResultwhere
P: Processor,
source§fn process_child_values<P>(
&mut self,
__processor: &mut P,
__state: &ProcessingState<'_>,
) -> ProcessingResultwhere
P: Processor,
fn process_child_values<P>(
&mut self,
__processor: &mut P,
__state: &ProcessingState<'_>,
) -> ProcessingResultwhere
P: Processor,
impl StructuralPartialEq for Exception
Auto Trait Implementations§
impl Freeze for Exception
impl RefUnwindSafe for Exception
impl Send for Exception
impl Sync for Exception
impl Unpin for Exception
impl UnwindSafe for Exception
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
)