AI SDK Telemetry
Live analytics from Upstash Redis Search aggregations — last 24 hours.
Telemetry in code
Add the integration to your AI SDK calls, then read it back — every chart here is one Redis Search aggregation.
import { generateText } from "ai";import { openai } from "@ai-sdk/openai";import { redisSearchTelemetry } from "@/src/telemetry";await generateText({model: openai("gpt-4o-mini"),prompt,experimental_telemetry: {isEnabled: true,functionId: "weather-bot",integrations: [redisSearchTelemetry()],},});
Index
Activenameai-telemetry
typejson
fields11
generations69
tool calls50
Generate telemetry
Run the AI SDK with the integration wired in — events land in the index and the charts update.
OR
Runs 5 sample prompts.
Set OPENAI_API_KEY in the backend to enable data ingestion.
Generations
69
42 in last 30 min
Total tokens
52,983
35,641 in · 17,342 out
Tool calls
50
6 failed
Avg tokens / gen
768
across all generations
Tool latency
p50 / p95 / p99 per tool (ms), from
$percentiles.Tokens per agent
Average tokens from a
$stats aggregation grouped by agent (functionId).Finish reasons
Generation outcomes grouped with
$terms.Recent generations
Ordered by
ts DESC — no sorted sets.| Agent | Model | Tokens | Finish | Time |
|---|---|---|---|---|
| chat-handler | gpt-4o | 774 | stop | 12:39:03 PM |
| weather-bot | gpt-4o-mini | 1,152 | tool-calls | 12:29:03 PM |
| summarizer | gpt-4o-mini | 415 | stop | 12:27:03 PM |
| essayist | gpt-4o | 1,297 | stop | 12:26:03 PM |
| weather-bot | gpt-4o-mini | 589 | stop | 12:24:03 PM |
| weather-bot | gpt-4o-mini | 1,099 | stop | 12:24:03 PM |
| status-bot | gpt-4o-mini | 512 | stop | 12:15:03 PM |
| summarizer | gpt-4o-mini | 370 | stop | 12:13:03 PM |
| status-bot | gpt-4o-mini | 636 | stop | 12:02:03 PM |
| status-bot | gpt-4o-mini | 707 | stop | 11:55:03 AM |