Skip to content

AgentTrace

Defined in: src/telemetry/tracer.ts:73

Execution trace for performance analysis. Tracks timing and hierarchy of operations within the agent loop. Fields default to null for JSON serialization compatibility.

  • JSONSerializable<AgentTraceData>
new AgentTrace(name, options?): AgentTrace;

Defined in: src/telemetry/tracer.ts:97

ParameterTypeDescription
namestringDisplay name for this trace
options?{ parent?: AgentTrace; startTime?: number; }Optional configuration for parent and startTime
options.parent?AgentTrace-
options.startTime?number-

AgentTrace

readonly id: string;

Defined in: src/telemetry/tracer.ts:75

Unique identifier (UUID) for this trace.


readonly name: string;

Defined in: src/telemetry/tracer.ts:77

Human-readable display name (e.g., “Cycle 1”, “Tool: calc”, “stream_messages”).


readonly parentId: string;

Defined in: src/telemetry/tracer.ts:79

ID of the parent trace, if this trace is nested. Null for root traces.


readonly startTime: number;

Defined in: src/telemetry/tracer.ts:81

Start time in milliseconds since epoch.


endTime: number = null;

Defined in: src/telemetry/tracer.ts:83

End time in milliseconds since epoch. Null until trace is ended.


duration: number = 0;

Defined in: src/telemetry/tracer.ts:85

Duration in milliseconds (endTime - startTime).


readonly children: AgentTrace[] = [];

Defined in: src/telemetry/tracer.ts:87

Child traces nested under this trace.


readonly metadata: Record<string, string> = {};

Defined in: src/telemetry/tracer.ts:89

Additional metadata for this trace (e.g., cycleId, toolUseId, toolName).


message: Message = null;

Defined in: src/telemetry/tracer.ts:91

Message associated with this trace (e.g., model output). Null if not applicable.

end(endTime?): void;

Defined in: src/telemetry/tracer.ts:111

ParameterTypeDescription
endTime?numberOptional end time in milliseconds since epoch

void


toJSON(): AgentTraceData;

Defined in: src/telemetry/tracer.ts:116

AgentTraceData

JSONSerializable.toJSON