OpenTelemetry
Export agent traces and metrics to any OpenTelemetry-compatible backend.
Setup
AgentForge automatically instruments agent runs with OpenTelemetry spans:
import { getInstrumentation, recordRunMetrics } from '@ahzan-agentforge/core';
const instrumentation = getInstrumentation();Span Types
| Span | Description |
|---|---|
agentforge.run | Full agent run |
agentforge.step | Single execution step |
agentforge.llm.call | LLM API call |
agentforge.tool.execute | Tool execution |
Metrics
import { recordRunMetrics, SpanStatusCode } from '@ahzan-agentforge/core';
recordRunMetrics({
runId: 'run_abc',
agentName: 'my-agent',
status: 'completed',
steps: 5,
totalTokens: 12345,
duration: 3200,
costUsd: 0.02,
});Exporting
Configure an OTEL exporter in your project:
// agentforge.config.ts
export default defineConfig({
observability: {
enabled: true,
exporter: 'otlp',
endpoint: 'http://localhost:4318',
},
});Compatible with Jaeger, Datadog, Honeycomb, Grafana Tempo, and any OTLP endpoint.
Resetting
For testing, reset instrumentation state:
import { resetInstrumentation } from '@ahzan-agentforge/core';
resetInstrumentation();Next Steps
- Anomaly Detection — behavioral anomalies
- Inspector — visual debugging