pub struct TraceMetrics {Show 22 fields
pub scope: EvaluationScope,
pub started_at_millis: Option<u64>,
pub ended_at_millis: Option<u64>,
pub elapsed_ms: Option<u64>,
pub record_count: usize,
pub run_count: usize,
pub turn_count: usize,
pub provider_call_count: u64,
pub provider_input_tokens: u64,
pub provider_output_tokens: u64,
pub provider_total_tokens: u64,
pub tool_call_count: u64,
pub tool_completed_count: u64,
pub tool_failed_count: u64,
pub tool_timed_out_count: u64,
pub tool_cancelled_count: u64,
pub tool_denied_count: u64,
pub tool_rewritten_count: u64,
pub tool_unknown_count: u64,
pub tool_recovery_required_count: u64,
pub tool_total_elapsed_ms: Option<u64>,
pub tools: Vec<ToolTraceMetric>,
}Expand description
Deterministic metrics for a turn, run, session, or custom trace scope.
Fields§
§scope: EvaluationScopeScope these metrics describe.
started_at_millis: Option<u64>Earliest non-zero journal timestamp observed for this scope.
ended_at_millis: Option<u64>Latest non-zero journal timestamp observed for this scope.
elapsed_ms: Option<u64>ended_at_millis - started_at_millis when both are available.
record_count: usizeNumber of journal records inspected for this scope.
run_count: usizeNumber of distinct runs represented in this scope.
turn_count: usizeNumber of distinct turns represented in this scope.
provider_call_count: u64Number of completed provider attempts.
provider_input_tokens: u64Sum of provider-reported input tokens.
provider_output_tokens: u64Sum of provider-reported output tokens.
provider_total_tokens: u64Sum of provider-reported total tokens.
tool_call_count: u64Number of distinct tool calls represented in this scope.
tool_completed_count: u64Number of tools whose latest terminal status is completed.
tool_failed_count: u64Number of tools whose latest terminal status is failed.
tool_timed_out_count: u64Number of tools whose latest terminal status is timed out.
tool_cancelled_count: u64Number of tools whose latest terminal status is cancelled.
tool_denied_count: u64Number of tools denied before execution.
tool_rewritten_count: u64Number of tools whose result was rewritten by a hook.
tool_unknown_count: u64Number of tools whose latest terminal status is unknown.
tool_recovery_required_count: u64Number of tools that require recovery.
tool_total_elapsed_ms: Option<u64>Sum of per-tool elapsed milliseconds when at least one tool has timing.
tools: Vec<ToolTraceMetric>Per-tool metrics, one row per distinct tool call id.
Implementations§
Source§impl TraceMetrics
impl TraceMetrics
Sourcepub fn from_turn_trace(trace: &TurnTrace) -> Result<Self, AgentError>
pub fn from_turn_trace(trace: &TurnTrace) -> Result<Self, AgentError>
Builds deterministic metrics from a turn trace.
Sourcepub fn from_run_trace(trace: &RunTrace) -> Result<Self, AgentError>
pub fn from_run_trace(trace: &RunTrace) -> Result<Self, AgentError>
Builds deterministic metrics from a run trace.
Sourcepub fn from_session_timeline(timeline: &SessionTimeline) -> Self
pub fn from_session_timeline(timeline: &SessionTimeline) -> Self
Builds deterministic metrics from a session timeline.
Trait Implementations§
Source§impl Clone for TraceMetrics
impl Clone for TraceMetrics
Source§fn clone(&self) -> TraceMetrics
fn clone(&self) -> TraceMetrics
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 TraceMetrics
impl Debug for TraceMetrics
Source§impl<'de> Deserialize<'de> for TraceMetrics
impl<'de> Deserialize<'de> for TraceMetrics
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for TraceMetrics
impl PartialEq for TraceMetrics
Source§fn eq(&self, other: &TraceMetrics) -> bool
fn eq(&self, other: &TraceMetrics) -> bool
self and other values to be equal, and is used by ==.