use std::time::SystemTime;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum TracingEvent {
Enter(TracingMetadata),
Event {
metadata: TracingMetadata,
message: Option<String>,
},
Exit,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TracingMetadata {
pub level: LogLevel,
pub time: SystemTime,
pub module_path: Option<String>,
pub line: Option<u32>,
}
#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
pub enum LogLevel {
Trace,
Debug,
Info,
Warn,
Error,
}