Burnrate enriches every GenAI span with real dollar costs — and autonomously stops runaway agent spend before the invoice arrives.
# One line — cost on every span provider.add_span_processor( BurnrateSpanProcessor() ) # Every GenAI span now carries: { "gen_ai.usage.cost.total": 0.00423, "gen_ai.usage.cost.input": 0.00045, "gen_ai.usage.cost.output": 0.00378, "gen_ai.usage.cost.cache_read": 0.00012, "gen_ai.usage.cost.currency": "USD" }
A zero-config OpenTelemetry SpanProcessor. One line of code enriches every GenAI span with real dollar costs using a built-in pricing table. Handles the cases a single multiplier misses: output tokens priced several times higher than input, discounted cache reads, and separate reasoning-token buckets.
A complete upstream proposal targeting the OpenTelemetry GenAI SIG. Cost is structural — like token counts, not a derived metric — and belongs in the specification. If adopted, SigNoz — and every other OTel-compatible backend — gets first-class cost dashboards with zero integration work.
An autonomous incident responder built on Claude and the SigNoz MCP server. It receives budget alerts, queries traces, diagnoses the root cause through multi-turn reasoning, and throttles the culprit agent — closing the loop from detection to action without a human on-call.
Traces, metrics, and logs — all in one OpenTelemetry-native platform. The cost metric lands in SigNoz dashboards, the budget alert is a SigNoz alert rule, and Cost Guard runs its whole investigation through SigNoz's official MCP server. One open-source platform carries the entire loop — no glue services, no second vendor.
# Install: uv add burnrate-otel from burnrate import BurnrateSpanProcessor provider.add_span_processor(BurnrateSpanProcessor()) # Every GenAI span now carries: # gen_ai.usage.cost.total → 0.00423 # USD # gen_ai.usage.cost.input → 0.00045 # gen_ai.usage.cost.output → 0.00378 # gen_ai.usage.cost.cache_read → 0.00012 # # Plus a burnrate.cost.usd metric with dimensions: # burnrate.agent.id · gen_ai.request.model · service.name
This isn't a video. The panel below simulates the real defense loop in your browser: pick a failure mode (or just hit the burn button), decide where SigNoz should draw the line, and watch detection, investigation, and recovery close on their own.
The dashed line is where SigNoz fires. Lower it and the alert catches the spike early; raise it and count the dollars that burn before anyone notices. Some failures plateau below a lazy threshold — and burn forever.
That red number is the price of your threshold. Re-run the same failure with a lower line and watch it shrink — that's why the alert matters.
Burnrate doesn't rebuild observability — it teaches SigNoz to think in dollars. The metric you watched, the alert you tuned, and every query Cost Guard asked during the investigation flow through one platform.
burnrate.cost.usd charted live — per agent, per model, per service. Spend stops being an invoice-day surprise.
BurnRateBudgetAlert watches real dollars, not proxy metrics. The threshold you just tuned is a SigNoz alert rule.
Chaos warnings from the agents and Cost Guard's alert-to-throttle narrative, shipped over OTLP with trace context.
Cost Guard's eyes. Every trace search and metric query in the investigation runs through SigNoz's official MCP server.
Everything you just simulated ships in the repo — real agents, real spans, a real SigNoz alert rule, and a real throttle.
$ curl -X POST http://localhost:8001/chaos/activate/retry_loop $ curl -X POST "http://localhost:8001/research/batch?count=5" # SigNoz fires BurnRateBudgetAlert → Cost Guard investigates via MCP # → diagnoses the retry loop → throttles researcher-v1 → spend recovers