Datadog

Send AI observability metrics and events to Datadog.

Setup

1. Get your Datadog API key

From Datadog API Keys.

2. Add Datadog destination

import BrainstormRouter from "brainstormrouter";

const client = new BrainstormRouter({ apiKey: "br_live_..." });

await client.observability.addDestination({
  name: "Datadog",
  type: "datadog",
  config: { api_key: "dd-api-key-..." },
  event_types: ["usage", "error", "guardrail"],
  batch: { max_size: 50, flush_interval_ms: 10000 },
});

await client.observability.setEnabled(true);
curl
curl -X POST https://api.brainstormrouter.com/v1/observability/destinations \
  -H "Authorization: Bearer br_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Datadog",
    "type": "datadog",
    "config": {"api_key": "dd-api-key-..."},
    "event_types": ["usage", "error", "guardrail"],
    "batch": {"max_size": 50, "flush_interval_ms": 10000}
  }'

Events in Datadog

Event typeDatadog metric/event
usageCustom metric: brainstormrouter.request.* (tokens, cost, latency)
errorEvent: provider errors, timeouts, circuit breaker trips
guardrailEvent: content safety matches with severity
qualityCustom metric: brainstormrouter.quality.* (accuracy, reward)

Dashboards

Create Datadog dashboards to monitor:

  • Cost per model — track spend across providers
  • Latency p50/p95/p99 — identify slow providers
  • Error rate by provider — detect outages early
  • Guardrail trigger rate — content safety trends
  • Memory operations — agent learning activity

Alerts

Set up Datadog monitors for:

# Alert if error rate exceeds 5%
brainstormrouter.request.error_rate > 0.05

# Alert if daily spend exceeds budget
sum:brainstormrouter.request.cost_usd > 100

# Alert on PII detection
brainstormrouter.guardrail.pii.count > 0