#[cfg(feature = "tracing-support")]
pub fn log_agent_started(agent_name: &str, tool_count: usize) {
tracing::info!(
agent_name = agent_name,
tool_count = tool_count,
"Agent started"
);
}
#[cfg(feature = "tracing-support")]
pub fn log_agent_completed(agent_name: &str, duration_ms: f64) {
tracing::info!(
agent_name = agent_name,
duration_ms = duration_ms,
"Agent completed"
);
}
#[cfg(feature = "tracing-support")]
pub fn log_tool_dispatch(agent_name: &str, tool_name: &str, tool_class: &str) {
tracing::info!(
agent_name = agent_name,
tool_name = tool_name,
tool_class = tool_class,
"Tool dispatched"
);
}
#[cfg(feature = "tracing-support")]
pub fn log_tool_result(agent_name: &str, tool_name: &str, success: bool, duration_ms: f64) {
tracing::info!(
agent_name = agent_name,
tool_name = tool_name,
success = success,
duration_ms = duration_ms,
"Tool result"
);
}
#[cfg(feature = "tracing-support")]
pub fn log_agent_transfer(from: &str, to: &str) {
tracing::info!(from = from, to = to, "Agent transfer");
}
#[cfg(feature = "tracing-support")]
pub fn log_agent_error(agent_name: &str, error: &str) {
tracing::warn!(agent_name = agent_name, error = error, "Agent error");
}
#[cfg(feature = "tracing-support")]
pub fn log_agent_tool_dispatch(parent: &str, child: &str) {
tracing::info!(parent = parent, child = child, "Agent tool dispatch");
}
#[cfg(feature = "tracing-support")]
pub fn log_event_loop_lag(agent_name: &str, skipped: u64) {
tracing::warn!(
agent_name = agent_name,
skipped = skipped,
"Event loop lag — skipped events"
);
}
#[cfg(not(feature = "tracing-support"))]
pub fn log_agent_started(_: &str, _: usize) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_agent_completed(_: &str, _: f64) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_tool_dispatch(_: &str, _: &str, _: &str) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_tool_result(_: &str, _: &str, _: bool, _: f64) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_agent_transfer(_: &str, _: &str) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_agent_error(_: &str, _: &str) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_agent_tool_dispatch(_: &str, _: &str) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_event_loop_lag(_: &str, _: u64) {}
#[cfg(feature = "tracing-support")]
pub fn log_llm_call(
model_id: &str,
agent_name: &str,
prompt_tokens: u32,
completion_tokens: u32,
duration_ms: f64,
) {
tracing::info!(
model_id = model_id,
agent_name = agent_name,
prompt_tokens = prompt_tokens,
completion_tokens = completion_tokens,
duration_ms = duration_ms,
"LLM call completed"
);
}
#[cfg(feature = "tracing-support")]
pub fn log_phase_transition(from: &str, to: &str) {
tracing::info!(from = from, to = to, "Phase transition");
}
#[cfg(feature = "tracing-support")]
pub fn log_extraction_result(extractor: &str, success: bool, duration_ms: f64) {
tracing::info!(
extractor = extractor,
success = success,
duration_ms = duration_ms,
"Extraction completed"
);
}
#[cfg(feature = "tracing-support")]
pub fn log_session_persisted(session_id: &str, backend: &str, duration_ms: f64) {
tracing::info!(
session_id = session_id,
backend = backend,
duration_ms = duration_ms,
"Session persisted"
);
}
#[cfg(not(feature = "tracing-support"))]
pub fn log_llm_call(_: &str, _: &str, _: u32, _: u32, _: f64) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_phase_transition(_: &str, _: &str) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_extraction_result(_: &str, _: bool, _: f64) {}
#[cfg(not(feature = "tracing-support"))]
pub fn log_session_persisted(_: &str, _: &str, _: f64) {}