beamtrace/diagnostics
Types
pub type Finding {
Finding(
kind: FindingKind,
summary: String,
evidence: types.Evidence,
event_ids: List(String),
value: Int,
)
}
Constructors
-
Finding( kind: FindingKind, summary: String, evidence: types.Evidence, event_ids: List(String), value: Int, )
pub type FindingKind {
HotSender
FanIn
QueueWait
DanglingCall
ReplyTimeout
CrashChain
SpawnChurn
CriticalPath
}
Constructors
-
HotSender -
FanIn -
QueueWait -
DanglingCall -
ReplyTimeout -
CrashChain -
SpawnChurn -
CriticalPath
Values
pub fn dangling_calls(
events: List(types.TraceEvent),
now_ns now_ns: Int,
timeout_ns timeout_ns: Int,
) -> List(Finding)
pub fn fan_in(
events: List(types.TraceEvent),
minimum_senders minimum_senders: Int,
) -> List(Finding)
pub fn hot_senders(
events: List(types.TraceEvent),
minimum_messages minimum_messages: Int,
) -> List(Finding)
pub fn queue_waits(
events: List(types.TraceEvent),
minimum_ns minimum_ns: Int,
) -> List(Finding)
pub fn restart_chains(
events: List(types.TraceEvent),
maximum_gap_ns maximum_gap_ns: Int,
) -> List(Finding)
Group a crash and subsequent supervisor spawn only when the new physical PID is later observed with the same logical actor identity. The temporal association is intentionally retained as inferred evidence.