use katra_core::TraceEvent;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub enum TraceRecord {
Event(TraceEvent),
EpochMarker {
label: String,
ts_mono_ns: u64,
ts_wall_ns: u64,
},
Counter {
name: String,
value: u64,
ts_mono_ns: u64,
},
SessionSummary(TraceSummary),
}
#[derive(Clone, Debug, Default, PartialEq, Serialize, Deserialize)]
pub struct TraceSummary {
pub event_count: u64,
pub duration_ns: u64,
pub span_count: u64,
pub request_count: u64,
pub counter_events: u64,
pub overhead_ns: u64,
pub dropped: u64,
}