---
title: "Agent Tracing"
description: "Monitor agents with token usage, latency, tool execution, and error tracking."
url: https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing/
---

# Set Up Agent Tracing | Sentry for Flue

With [Sentry Agent Tracing](https://docs.sentry.io/product/agents/dashboards.md), you can monitor and debug your AI systems with full-stack context. You'll be able to track key insights like token usage, latency, tool usage, and error rates — and group multi-turn chats in [Conversations](https://docs.sentry.io/product/agents/conversations.md). Agent Tracing data is fully connected to your other Sentry data like logs, errors, and traces.

## [Supported Instrumentation](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#supported-instrumentation)

As of SDK version `11.0.0`, Sentry auto-instruments the most popular AI SDKs and frameworks out of the box — no manual setup is required. Just enable [tracing](https://docs.sentry.io/platforms/javascript/guides/flue/tracing.md), then pick your AI stack below. Each integration page has the details.

[![vercel icon](https://docs.sentry.io/_next/static/media/vercel.08882b16.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/vercelai.md)

[Vercel AI SDK](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/vercelai.md)

[![openai icon](https://docs.sentry.io/_next/static/media/openai.2d7a0936.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/openai.md)

[OpenAI](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/openai.md)

[![anthropic icon](https://docs.sentry.io/_next/static/media/anthropic.6478e781.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/anthropic.md)

[Anthropic](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/anthropic.md)

[![google-genai icon](https://docs.sentry.io/_next/static/media/gemini.6a0c6609.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/google-genai.md)

[Google Gen AI SDK](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/google-genai.md)

[![langchain icon](https://docs.sentry.io/_next/static/media/langchain.00856afb.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/langchain.md)

[LangChain](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/langchain.md)

[![langgraph icon](https://docs.sentry.io/_next/static/media/langgraph.0ea576b7.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/langgraph.md)

[LangGraph](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/langgraph.md)

[![mistral icon](https://docs.sentry.io/_next/static/media/mistral.9a6254c9.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/mistral.md)

[Mistral AI](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/mistral.md)

[![groq icon](https://docs.sentry.io/_next/static/media/groq.fa8427cb.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/groq.md)

[Groq](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/groq.md)

[![together-ai icon](https://docs.sentry.io/_next/static/media/default.615d3e47.svg)](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/together-ai.md)

[Together AI](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/integrations/together-ai.md)

## [Tracking Conversations](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#tracking-conversations)

[Conversations](https://docs.sentry.io/product/agents/conversations.md) groups multi-turn AI activity into a single replay of messages and tool calls. Use `setConversationId()` so every AI span in a chat session shares the same `gen_ai.conversation.id`.

Some integrations infer a conversation ID automatically. For everything else (including Workers AI), set it yourself at the start of **every request or operation that makes AI calls**, before those calls run. Reuse the same session ID across messages in the chat. The ID is applied to AI-related spans on the current isolation scope (which is typically request-scoped). Pass `null` to unset it.

```javascript
Sentry.setConversationId("conv_abc123");
```

### [Identifying Users in Conversations](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#identifying-users-in-conversations)

The [Conversations](https://docs.sentry.io/product/agents/conversations.md) view includes a **User** column. To populate it, call `setUser` once per request or session, before any AI calls:

```javascript
Sentry.setUser({
  id: "user_123",
  email: "jane@example.com",
  username: "jane",
});
```

Any of `id`, `email`, or `username` is sufficient — the Conversations view displays whichever fields are present. See the [setUser API reference](https://docs.sentry.io/platforms/javascript/guides/flue/configuration/apis.md#setUser) for the full list of supported fields.

## [Options](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#options)

### [Privacy Controls](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#privacy-controls)

With `dataCollection: {}` (or any `dataCollection` config), generative AI inputs and outputs default to **on**. To turn them off:

```javascript
Sentry.init({
  dsn: "https://<key>@o<orgId>.ingest.sentry.io/<projectId>",
  dataCollection: {
    genAI: { inputs: false, outputs: false },
  },
});
```

You can also set `recordInputs` / `recordOutputs` on a specific AI integration. See each integration page for the API that applies on your platform.

### [Streaming Gen AI Spans](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#streaming-gen-ai-spans)

From SDK `10.61.0`, `gen_ai` spans are sent as standalone envelope items (avoids large-payload drops; required for [Conversations](https://docs.sentry.io/product/agents/conversations.md)).

## [Manual Instrumentation](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#manual-instrumentation)

You can also instrument agent spans yourself. See [manual instrumentation](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing/manual-instrumentation.md).

## [MCP Server Monitoring](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing.md#mcp-server-monitoring)

If you're building MCP (Model Context Protocol) servers, Sentry can also track tool executions, prompt retrievals, and resource access. See [MCP Monitoring](https://docs.sentry.io/platforms/javascript/guides/flue/mcp-monitoring.md) for setup instructions.

## Pages in this section

- [Manual Instrumentation](https://docs.sentry.io/platforms/javascript/guides/flue/agent-tracing/manual-instrumentation.md)
