Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 6 additions & 16 deletions docs/platforms/javascript/common/agent-tracing/anthropic.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,7 @@ title: Anthropic
description: "Adds instrumentation for the Anthropic SDK."
sidebar_order: 22
supported:
- javascript.node
- javascript.aws-lambda
- javascript.azure-functions
- javascript.connect
- javascript.express
- javascript.fastify
- javascript.gcp-functions
- javascript.hapi
- javascript.hono
- javascript.koa
- javascript.nestjs
- javascript.electron
- javascript.nextjs
- javascript.nuxt
Expand All @@ -22,7 +12,6 @@ supported:
- javascript.react-router
- javascript.remix
- javascript.astro
- javascript.bun
- javascript.tanstackstart-react
- javascript.cloudflare
- javascript
Expand All @@ -33,6 +22,7 @@ supported:
- javascript.solid
- javascript.ember
- javascript.gatsby

---

<PlatformSection supported={["javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react"]}>
Expand All @@ -41,13 +31,13 @@ supported:
</Alert>
</PlatformSection>

<PlatformSection supported={["javascript.node", "javascript.aws-lambda", "javascript.azure-functions", "javascript.connect", "javascript.express", "javascript.fastify", "javascript.gcp-functions", "javascript.hapi", "javascript.hono", "javascript.koa", "javascript.nestjs", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]}>
<PlatformSection supported={["javascript.node", "javascript.azure-functions", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]} notSupported={["javascript.firebase", "javascript.nitro"]}>

## Automatic Instrumentation

_Import name: `Sentry.anthropicAIIntegration`_

<PlatformSection notSupported={["javascript.node", "javascript.connect", "javascript.hapi", "javascript.koa"]}>
<PlatformSection supported={["javascript.angular", "javascript.astro", "javascript.aws-lambda", "javascript.azure-functions", "javascript.bun", "javascript.capacitor", "javascript.cloudflare", "javascript.cordova", "javascript.deno", "javascript.effect", "javascript.electron", "javascript.elysia", "javascript.ember", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gatsby", "javascript.gcp-functions", "javascript.hono", "javascript.mastra", "javascript.nestjs", "javascript.nextjs", "javascript.nitro", "javascript.nuxt", "javascript.react", "javascript.react-router", "javascript.remix", "javascript.solid", "javascript.solidstart", "javascript.svelte", "javascript.sveltekit", "javascript.tanstackstart-react", "javascript.vue", "javascript.wasm"]}>
<Alert>
If you are using a different runtime (like Bun, Cloudflare Workers or a Browser) or experiencing missing spans, you need to use **[Manual Instrumentation](#manual-instrumentation)** to explicitly wrap your AI client instance instead.
</Alert>
Expand All @@ -61,7 +51,7 @@ supported:

</PlatformSection>

<PlatformSection notSupported={["javascript.node", "javascript.connect", "javascript.hapi", "javascript.koa"]}>
<PlatformSection supported={["javascript.angular", "javascript.astro", "javascript.aws-lambda", "javascript.azure-functions", "javascript.bun", "javascript.capacitor", "javascript.cloudflare", "javascript.cordova", "javascript.deno", "javascript.effect", "javascript.electron", "javascript.elysia", "javascript.ember", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gatsby", "javascript.gcp-functions", "javascript.hono", "javascript.mastra", "javascript.nestjs", "javascript.nextjs", "javascript.nitro", "javascript.nuxt", "javascript.react", "javascript.react-router", "javascript.remix", "javascript.solid", "javascript.solidstart", "javascript.svelte", "javascript.sveltekit", "javascript.tanstackstart-react", "javascript.vue", "javascript.wasm"]}>

## Manual Instrumentation

Expand Down Expand Up @@ -119,7 +109,7 @@ Defaults to `true` if `dataCollection.genAI.outputs` is `true` (which is the def

**Usage**

<PlatformSection supported={["javascript.node", "javascript.aws-lambda", "javascript.azure-functions", "javascript.connect", "javascript.express", "javascript.fastify", "javascript.gcp-functions", "javascript.hapi", "javascript.hono", "javascript.koa", "javascript.nestjs", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]}>
<PlatformSection supported={["javascript.node", "javascript.azure-functions", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]} notSupported={["javascript.firebase", "javascript.nitro"]}>

Using the `anthropicAIIntegration` integration for **automatic instrumentation**:

Expand All @@ -138,7 +128,7 @@ Defaults to `true` if `dataCollection.genAI.outputs` is `true` (which is the def

</PlatformSection>

<PlatformSection notSupported={["javascript.node", "javascript.connect", "javascript.hapi", "javascript.koa"]}>
<PlatformSection supported={["javascript.angular", "javascript.astro", "javascript.aws-lambda", "javascript.azure-functions", "javascript.bun", "javascript.capacitor", "javascript.cloudflare", "javascript.cordova", "javascript.deno", "javascript.effect", "javascript.electron", "javascript.elysia", "javascript.ember", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gatsby", "javascript.gcp-functions", "javascript.hono", "javascript.mastra", "javascript.nestjs", "javascript.nextjs", "javascript.nitro", "javascript.nuxt", "javascript.react", "javascript.react-router", "javascript.remix", "javascript.solid", "javascript.solidstart", "javascript.svelte", "javascript.sveltekit", "javascript.tanstackstart-react", "javascript.vue", "javascript.wasm"]}>

Using the `instrumentAnthropicAiClient` wrapper for **manual instrumentation**:

Expand Down
13 changes: 13 additions & 0 deletions docs/platforms/javascript/common/agent-tracing/eve.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,19 @@ sidebar_order: 27
description: "Learn how to send Eve agent traces to Sentry over OTLP."
supported:
- javascript.node
notSupported:
- javascript.aws-lambda
- javascript.connect
- javascript.express
- javascript.fastify
- javascript.firebase
- javascript.gcp-functions
- javascript.hapi
- javascript.hono
- javascript.koa
- javascript.nestjs
- javascript.nitro

---

[Eve](https://eve.dev/) is Vercel's filesystem-first framework for building durable backend AI agents on top of the Vercel AI SDK. Eve ships an official Sentry instrumentation that exports agent traces directly to Sentry's OTLP endpoint. You need to have a Sentry project set up before installing and configuring the OTLP.
Expand Down
19 changes: 16 additions & 3 deletions docs/platforms/javascript/common/agent-tracing/flue.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,19 @@ description: "Learn how to send Flue agent traces, logs, and errors to Sentry."
supported:
- javascript.node
- javascript.cloudflare
notSupported:
- javascript.aws-lambda
- javascript.connect
- javascript.express
- javascript.fastify
- javascript.firebase
- javascript.gcp-functions
- javascript.hapi
- javascript.hono
- javascript.koa
- javascript.nestjs
- javascript.nitro

---

[Flue](https://flueframework.com/) is an open TypeScript framework for building AI agents, made by the Astro team. Flue ships an official Sentry blueprint that installs the Sentry SDK, wires Flue's OpenTelemetry instrumentation into it, and bridges Flue's runtime events to Sentry. You don't need to add Sentry calls to each agent or tool.
Expand All @@ -16,7 +29,7 @@ With a valid `SENTRY_DSN`, Flue can send three connected signals to Sentry:
- **Logs**: With `enableLogs: true` in the generated Sentry SDK configuration, every `log.info`, `log.warn`, and `log.error` call from your tools and hooks appears as <PlatformLink to="/logs/">Sentry Logs</PlatformLink>. When tracing is enabled, Sentry correlates these logs with the trace.
- **Issues**: The generated bridge captures terminal failures, such as a failed prompt, skill, task, or shell operation, as Sentry error issues. Recovered tool errors remain diagnostic context on the trace when tracing is enabled and don't create issues.

<PlatformSection supported={["javascript.node"]}>
<PlatformSection supported={["javascript.node"]} notSupported={["javascript.aws-lambda", "javascript.connect", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gcp-functions", "javascript.hapi", "javascript.hono", "javascript.koa", "javascript.nestjs", "javascript.nitro"]}>

<Alert>

Expand Down Expand Up @@ -53,7 +66,7 @@ The generated module reads its configuration from environment variables. Only `S
| `SENTRY_AI_RECORD_INPUTS` | `false` | Set to `true` to include prompts, system instructions, and tool definitions and arguments in spans. |
| `SENTRY_AI_RECORD_OUTPUTS` | `false` | Set to `true` to include model output, tool results, and exception messages and stacks in spans. |

<PlatformSection supported={["javascript.node"]}>
<PlatformSection supported={["javascript.node"]} notSupported={["javascript.aws-lambda", "javascript.connect", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gcp-functions", "javascript.hapi", "javascript.hono", "javascript.koa", "javascript.nestjs", "javascript.nitro"]}>

```bash {filename:.env}
SENTRY_DSN="___PUBLIC_DSN___"
Expand Down Expand Up @@ -91,7 +104,7 @@ Review the data your agent handles before you enable these options in production

## How It Works

<PlatformSection supported={["javascript.node"]}>
<PlatformSection supported={["javascript.node"]} notSupported={["javascript.aws-lambda", "javascript.connect", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gcp-functions", "javascript.hapi", "javascript.hono", "javascript.koa", "javascript.nestjs", "javascript.nitro"]}>

On Node.js, the generated `sentry.ts` calls `Sentry.init` at module scope. Sentry becomes the global OpenTelemetry tracer provider, so the spans from `@flue/opentelemetry` flow to Sentry without extra wiring. The following abridged example shows the core of the generated file. It omits helper definitions and the terminal-failure capture implementation, so use the file generated by the blueprint rather than copying this example:

Expand Down
22 changes: 6 additions & 16 deletions docs/platforms/javascript/common/agent-tracing/google-genai.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,7 @@ title: Google Gen AI
description: "Adds instrumentation for Google Gen AI SDK."
sidebar_order: 23
supported:
- javascript.node
- javascript.aws-lambda
- javascript.azure-functions
- javascript.connect
- javascript.express
- javascript.fastify
- javascript.gcp-functions
- javascript.hapi
- javascript.hono
- javascript.koa
- javascript.nestjs
- javascript.electron
- javascript.nextjs
- javascript.nuxt
Expand All @@ -22,7 +12,6 @@ supported:
- javascript.react-router
- javascript.remix
- javascript.astro
- javascript.bun
- javascript.tanstackstart-react
- javascript.cloudflare
- javascript
Expand All @@ -33,6 +22,7 @@ supported:
- javascript.solid
- javascript.ember
- javascript.gatsby

---

<PlatformSection supported={["javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react"]}>
Expand All @@ -41,13 +31,13 @@ supported:
</Alert>
</PlatformSection>

<PlatformSection supported={["javascript.node", "javascript.aws-lambda", "javascript.azure-functions", "javascript.connect", "javascript.express", "javascript.fastify", "javascript.gcp-functions", "javascript.hapi", "javascript.hono", "javascript.koa", "javascript.nestjs", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]}>
<PlatformSection supported={["javascript.node", "javascript.azure-functions", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]} notSupported={["javascript.firebase", "javascript.nitro"]}>

## Automatic Instrumentation

_Import name: `Sentry.googleGenAIIntegration`_

<PlatformSection notSupported={["javascript.node", "javascript.connect", "javascript.hapi", "javascript.koa"]}>
<PlatformSection supported={["javascript.angular", "javascript.astro", "javascript.aws-lambda", "javascript.azure-functions", "javascript.bun", "javascript.capacitor", "javascript.cloudflare", "javascript.cordova", "javascript.deno", "javascript.effect", "javascript.electron", "javascript.elysia", "javascript.ember", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gatsby", "javascript.gcp-functions", "javascript.hono", "javascript.mastra", "javascript.nestjs", "javascript.nextjs", "javascript.nitro", "javascript.nuxt", "javascript.react", "javascript.react-router", "javascript.remix", "javascript.solid", "javascript.solidstart", "javascript.svelte", "javascript.sveltekit", "javascript.tanstackstart-react", "javascript.vue", "javascript.wasm"]}>
<Alert>
If you are using a different runtime (like Bun, Cloudflare Workers or a Browser) or experiencing missing spans, you need to use **[Manual Instrumentation](#manual-instrumentation)** to explicitly wrap your AI client instance instead.
</Alert>
Expand All @@ -61,7 +51,7 @@ supported:

</PlatformSection>

<PlatformSection notSupported={["javascript.node", "javascript.connect", "javascript.hapi", "javascript.koa"]}>
<PlatformSection supported={["javascript.angular", "javascript.astro", "javascript.aws-lambda", "javascript.azure-functions", "javascript.bun", "javascript.capacitor", "javascript.cloudflare", "javascript.cordova", "javascript.deno", "javascript.effect", "javascript.electron", "javascript.elysia", "javascript.ember", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gatsby", "javascript.gcp-functions", "javascript.hono", "javascript.mastra", "javascript.nestjs", "javascript.nextjs", "javascript.nitro", "javascript.nuxt", "javascript.react", "javascript.react-router", "javascript.remix", "javascript.solid", "javascript.solidstart", "javascript.svelte", "javascript.sveltekit", "javascript.tanstackstart-react", "javascript.vue", "javascript.wasm"]}>

## Manual Instrumentation

Expand Down Expand Up @@ -115,7 +105,7 @@ Defaults to `true` if `dataCollection.genAI.outputs` is `true` (which is the def

**Usage**

<PlatformSection supported={["javascript.node", "javascript.aws-lambda", "javascript.azure-functions", "javascript.connect", "javascript.express", "javascript.fastify", "javascript.gcp-functions", "javascript.hapi", "javascript.hono", "javascript.koa", "javascript.nestjs", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]}>
<PlatformSection supported={["javascript.node", "javascript.azure-functions", "javascript.nextjs", "javascript.nuxt", "javascript.solidstart", "javascript.sveltekit", "javascript.react-router", "javascript.remix", "javascript.astro", "javascript.tanstackstart-react", "javascript.electron", "javascript.cordova", "javascript.capacitor", "javascript.deno", "javascript.wasm"]} notSupported={["javascript.firebase", "javascript.nitro"]}>

Using the `googleGenAIIntegration` integration for **automatic instrumentation**:

Expand All @@ -134,7 +124,7 @@ Sentry.init({

</PlatformSection>

<PlatformSection notSupported={["javascript.node", "javascript.connect", "javascript.hapi", "javascript.koa"]}>
<PlatformSection supported={["javascript.angular", "javascript.astro", "javascript.aws-lambda", "javascript.azure-functions", "javascript.bun", "javascript.capacitor", "javascript.cloudflare", "javascript.cordova", "javascript.deno", "javascript.effect", "javascript.electron", "javascript.elysia", "javascript.ember", "javascript.express", "javascript.fastify", "javascript.firebase", "javascript.gatsby", "javascript.gcp-functions", "javascript.hono", "javascript.mastra", "javascript.nestjs", "javascript.nextjs", "javascript.nitro", "javascript.nuxt", "javascript.react", "javascript.react-router", "javascript.remix", "javascript.solid", "javascript.solidstart", "javascript.svelte", "javascript.sveltekit", "javascript.tanstackstart-react", "javascript.vue", "javascript.wasm"]}>

Using the `instrumentGoogleGenAIClient` wrapper for **manual instrumentation**:

Expand Down
Loading
Loading