pub struct ProfileCreated {
pub reason: String,
pub json_info: String,
pub path: String,
pub full: bool,
}Expand description
ProfileCreated is emitted whenever the middleware writes a snapshot archive on its own (e.g. the memory-growth detector), so clients can surface it or queue the archive for upload without polling the profiles directory. Archives produced as a result of a client RPC (DebugRunProfiler) are NOT re-announced via this event.
Fields§
§reason: Stringreason is a short, stable, UPPER_SNAKE_CASE label describing why the middleware produced this report. values come from the internal call sites:
- “MEMORY_GROWTH” : the desktop memory-growth detector tripped
- “LONG_RPC” : an RPC exceeded the long-execution threshold
- “DB_CORRUPTION” : an anystore/spacestore database failed to open More reasons may be added over time; clients should forward unknown values to Sentry as-is.
json_info: StringjsonInfo is JSON-encoded context produced by the middleware (reason- specific keys like “sysMemory”, “method”, “durationMs”, “db”, “code”). Clients forward it verbatim to Sentry as the event context.
path: Stringpath is the absolute path to the snapshot archive on disk; empty when the reason is event-only (e.g. DB_CORRUPTION) and no artifact was produced.
full: boolfull is true when the archive carries a timed CPU profile + trace in addition to heap and goroutines. False for fast snapshots and for event-only reports.
Trait Implementations§
Source§impl Clone for ProfileCreated
impl Clone for ProfileCreated
Source§fn clone(&self) -> ProfileCreated
fn clone(&self) -> ProfileCreated
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProfileCreated
impl Debug for ProfileCreated
Source§impl Default for ProfileCreated
impl Default for ProfileCreated
impl Eq for ProfileCreated
Source§impl Hash for ProfileCreated
impl Hash for ProfileCreated
Source§impl Message for ProfileCreated
impl Message for ProfileCreated
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for ProfileCreated
impl PartialEq for ProfileCreated
impl StructuralPartialEq for ProfileCreated
Auto Trait Implementations§
impl Freeze for ProfileCreated
impl RefUnwindSafe for ProfileCreated
impl Send for ProfileCreated
impl Sync for ProfileCreated
impl Unpin for ProfileCreated
impl UnsafeUnpin for ProfileCreated
impl UnwindSafe for ProfileCreated
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§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§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>
T in a tonic::Request