Struct relay_event_schema::protocol::Breadcrumb
source · pub struct Breadcrumb {
pub timestamp: Annotated<Timestamp>,
pub ty: Annotated<String>,
pub category: Annotated<String>,
pub level: Annotated<Level>,
pub message: Annotated<String>,
pub data: Annotated<Object<Value>>,
pub event_id: Annotated<EventId>,
pub other: Object<Value>,
}
Expand description
The Breadcrumbs Interface specifies a series of application events, or “breadcrumbs”, that occurred before an event.
An event may contain one or more breadcrumbs in an attribute named breadcrumbs
. The entries
are ordered from oldest to newest. Consequently, the last entry in the list should be the last
entry before the event occurred.
While breadcrumb attributes are not strictly validated in Sentry, a breadcrumb is most useful
when it includes at least a timestamp
and type
, category
or message
. The rendering of
breadcrumbs in Sentry depends on what is provided.
The following example illustrates the breadcrumbs part of the event payload and omits other attributes for simplicity.
{
"breadcrumbs": {
"values": [
{
"timestamp": "2016-04-20T20:55:53.845Z",
"message": "Something happened",
"category": "log",
"data": {
"foo": "bar",
"blub": "blah"
}
},
{
"timestamp": "2016-04-20T20:55:53.847Z",
"type": "navigation",
"data": {
"from": "/login",
"to": "/dashboard"
}
}
]
}
}
Fields§
§timestamp: Annotated<Timestamp>
The timestamp of the breadcrumb. Recommended.
A timestamp representing when the breadcrumb occurred. The format is either a string as defined in RFC 3339 or a numeric (integer or float) value representing the number of seconds that have elapsed since the Unix epoch.
Breadcrumbs are most useful when they include a timestamp, as it creates a timeline leading up to an event.
ty: Annotated<String>
The type of the breadcrumb. Optional, defaults to default
.
-
default
: Describes a generic breadcrumb. This is typically a log message or user-generated breadcrumb. Thedata
field is entirely undefined and as such, completely rendered as a key/value table. -
navigation
: Describes a navigation breadcrumb. A navigation event can be a URL change in a web application, or a UI transition in a mobile or desktop application, etc.Such a breadcrumb’s
data
object has the required fieldsfrom
andto
, which represent an application route/url each. -
http
: Describes an HTTP request breadcrumb. This represents an HTTP request transmitted from your application. This could be an AJAX request from a web application, or a server-to-server HTTP request to an API service provider, etc.Such a breadcrumb’s
data
property has the fieldsurl
,method
,status_code
(integer) andreason
(string).
category: Annotated<String>
A dotted string indicating what the crumb is or from where it comes. Optional.
Typically it is a module name or a descriptive string. For instance, ui.click could be used to indicate that a click happened in the UI or flask could be used to indicate that the event originated in the Flask framework.
level: Annotated<Level>
Severity level of the breadcrumb. Optional.
Allowed values are, from highest to lowest: fatal
, error
, warning
, info
, and
debug
. Levels are used in the UI to emphasize and deemphasize the crumb. Defaults to
info
.
message: Annotated<String>
Human readable message for the breadcrumb.
If a message is provided, it is rendered as text with all whitespace preserved. Very long text might be truncated in the UI.
data: Annotated<Object<Value>>
Arbitrary data associated with this breadcrumb.
Contains a dictionary whose contents depend on the breadcrumb type
. Additional parameters
that are unsupported by the type are rendered as a key/value table.
event_id: Annotated<EventId>
Identifier of the event this breadcrumb belongs to.
Sentry events can appear as breadcrumbs in other events as long as they have occurred in the same organization. This identifier links to the original event.
other: Object<Value>
Additional arbitrary fields for forwards compatibility.
Trait Implementations§
source§impl Clone for Breadcrumb
impl Clone for Breadcrumb
source§fn clone(&self) -> Breadcrumb
fn clone(&self) -> Breadcrumb
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for Breadcrumb
impl Debug for Breadcrumb
source§impl Default for Breadcrumb
impl Default for Breadcrumb
source§fn default() -> Breadcrumb
fn default() -> Breadcrumb
source§impl Empty for Breadcrumb
impl Empty for Breadcrumb
source§impl FromValue for Breadcrumb
impl FromValue for Breadcrumb
source§fn from_value(__value: Annotated<Value>) -> Annotated<Self>
fn from_value(__value: Annotated<Value>) -> Annotated<Self>
source§impl IntoValue for Breadcrumb
impl IntoValue for Breadcrumb
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 PartialEq for Breadcrumb
impl PartialEq for Breadcrumb
source§impl ProcessValue for Breadcrumb
impl ProcessValue for Breadcrumb
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 Breadcrumb
Auto Trait Implementations§
impl Freeze for Breadcrumb
impl RefUnwindSafe for Breadcrumb
impl Send for Breadcrumb
impl Sync for Breadcrumb
impl Unpin for Breadcrumb
impl UnwindSafe for Breadcrumb
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
)