From 6101dafff10994547457c576b1e8857a3635ffc4 Mon Sep 17 00:00:00 2001 From: Abhijeet Prasad Date: Tue, 4 Jun 2024 12:53:52 -0400 Subject: [PATCH] feat: Revamp JS integrations page for v8 (#10138) --- .../application-not-responding.mdx | 9 +- .../common/configuration/integrations/anr.mdx | 30 +++++ .../common/configuration/integrations/aws.mdx | 12 ++ .../configuration/integrations/awslambda.mdx | 12 ++ .../integrations/breadcrumbs.mdx | 25 +++- .../integrations/browserapierrors.mdx | 110 ++++++++++++++++++ .../integrations/browserprofiling.mdx | 19 +-- .../integrations/browsertracing.mdx | 6 +- .../configuration/integrations/bunserver.mdx | 18 +++ .../configuration/integrations/connect.mdx | 25 ++++ .../configuration/integrations/console.mdx | 6 +- .../integrations/contextlines.mdx | 14 +++ .../integrations/denocontext.mdx | 18 +++ .../configuration/integrations/denocron.mdx | 20 ++++ .../configuration/integrations/fastify.mdx | 25 ++++ .../integrations/globalhandlers.mdx | 5 +- .../integrations/googlecloudgrpc.mdx | 12 ++ .../integrations/googlecloudhttp.mdx | 12 ++ .../configuration/integrations/graphql.mdx | 53 +++++++++ .../configuration/integrations/hapi.mdx | 25 ++++ .../configuration/integrations/http.mdx | 5 +- .../configuration/integrations/httpclient.mdx | 6 +- .../integrations/httpcontext.mdx | 6 +- .../integrations/inboundfilters.mdx | 13 +-- .../configuration/integrations/index.mdx | 20 ++-- .../common/configuration/integrations/koa.mdx | 26 +++++ .../integrations/linkederrors.mdx | 2 +- .../integrations/localvariables.mdx | 14 ++- .../integrations/modulemetadata.mdx | 8 +- .../configuration/integrations/modules.mdx | 6 +- .../configuration/integrations/mongo.mdx | 37 ++++++ .../configuration/integrations/mongoose.mdx | 37 ++++++ .../configuration/integrations/mysql.mdx | 37 ++++++ .../configuration/integrations/mysql2.mdx | 37 ++++++ .../configuration/integrations/nest.mdx | 25 ++++ .../integrations/nodecontext.mdx | 5 +- .../configuration/integrations/nodefetch.mdx | 5 +- .../integrations/nodeprofiling.mdx | 25 ++-- .../integrations/normalizepath.mdx | 18 +++ .../integrations/onuncaughtexception.mdx | 6 +- .../configuration/integrations/postgres.mdx | 37 ++++++ .../configuration/integrations/prisma.mdx | 30 +++++ .../configuration/integrations/redis.mdx | 37 ++++++ .../configuration/integrations/replay.mdx | 6 +- .../integrations/replaycanvas.mdx | 39 +++++++ .../integrations/reportingobserver.mdx | 6 +- .../integrations/requestdata.mdx | 6 +- .../configuration/integrations/trycatch.mdx | 26 ----- .../integrations/unhandledrejection.mdx | 6 +- .../common/configuration/integrations/vue.mdx | 12 ++ .../integrations/wintercgfetch.mdx | 32 +++++ .../configuration/tree-shaking/index.mdx | 2 - .../common/session-replay/index.mdx | 27 +++-- .../integrations/contextlines.mdx | 20 ++++ .../integrations/contextlines.mdx | 20 ++++ .../php/guides/laravel/usage/index.mdx | 4 +- .../python/integrations/logging/index.mdx | 2 +- .../capture-console/javascript.bun.mdx | 10 ++ .../capture-console/javascript.deno.mdx | 10 ++ .../contextlines/javascript.bun.mdx | 10 ++ .../contextlines/javascript.deno.mdx | 10 ++ .../configuration/debug/javascript.bun.mdx | 10 ++ .../configuration/debug/javascript.deno.mdx | 10 ++ .../configuration/dedupe/javascript.bun.mdx | 10 ++ .../configuration/dedupe/javascript.deno.mdx | 10 ++ .../extra-error-data/javascript.bun.mdx | 10 ++ .../extra-error-data/javascript.deno.mdx | 10 ++ .../integrations/javascript.astro.mdx | 63 ++++++++++ .../integrations/javascript.aws-lambda.mdx | 35 ++++++ .../integrations/javascript.bun.mdx | 31 +++++ .../integrations/javascript.deno.mdx | 18 +++ .../integrations/javascript.gatsby.mdx | 25 ++++ .../integrations/javascript.gcp-functions.mdx | 35 ++++++ .../configuration/integrations/javascript.mdx | 25 ++++ .../integrations/javascript.nextjs.mdx | 75 ++++++++++++ .../integrations/javascript.node.mdx | 33 ++++++ .../integrations/javascript.remix.mdx | 63 ++++++++++ .../integrations/javascript.sveltekit.mdx | 63 ++++++++++ .../integrations/javascript.vue.mdx | 26 +++++ .../rewrite-frames/javascript.bun.mdx | 21 ++++ .../rewrite-frames/javascript.deno.mdx | 21 ++++ .../sessiontiming/javascript.bun.mdx | 10 ++ .../sessiontiming/javascript.deno.mdx | 10 ++ 83 files changed, 1659 insertions(+), 101 deletions(-) create mode 100644 docs/platforms/javascript/common/configuration/integrations/anr.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/aws.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/awslambda.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/browserapierrors.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/bunserver.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/connect.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/denocontext.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/denocron.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/fastify.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/googlecloudgrpc.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/googlecloudhttp.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/graphql.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/hapi.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/koa.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/mongo.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/mongoose.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/mysql.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/mysql2.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/nest.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/normalizepath.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/postgres.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/prisma.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/redis.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/replaycanvas.mdx delete mode 100644 docs/platforms/javascript/common/configuration/integrations/trycatch.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/vue.mdx create mode 100644 docs/platforms/javascript/common/configuration/integrations/wintercgfetch.mdx create mode 100644 docs/platforms/javascript/guides/bun/configuration/integrations/contextlines.mdx create mode 100644 docs/platforms/javascript/guides/deno/configuration/integrations/contextlines.mdx create mode 100644 platform-includes/configuration/capture-console/javascript.bun.mdx create mode 100644 platform-includes/configuration/capture-console/javascript.deno.mdx create mode 100644 platform-includes/configuration/contextlines/javascript.bun.mdx create mode 100644 platform-includes/configuration/contextlines/javascript.deno.mdx create mode 100644 platform-includes/configuration/debug/javascript.bun.mdx create mode 100644 platform-includes/configuration/debug/javascript.deno.mdx create mode 100644 platform-includes/configuration/dedupe/javascript.bun.mdx create mode 100644 platform-includes/configuration/dedupe/javascript.deno.mdx create mode 100644 platform-includes/configuration/extra-error-data/javascript.bun.mdx create mode 100644 platform-includes/configuration/extra-error-data/javascript.deno.mdx create mode 100644 platform-includes/configuration/integrations/javascript.astro.mdx create mode 100644 platform-includes/configuration/integrations/javascript.aws-lambda.mdx create mode 100644 platform-includes/configuration/integrations/javascript.bun.mdx create mode 100644 platform-includes/configuration/integrations/javascript.deno.mdx create mode 100644 platform-includes/configuration/integrations/javascript.gatsby.mdx create mode 100644 platform-includes/configuration/integrations/javascript.gcp-functions.mdx create mode 100644 platform-includes/configuration/integrations/javascript.mdx create mode 100644 platform-includes/configuration/integrations/javascript.nextjs.mdx create mode 100644 platform-includes/configuration/integrations/javascript.node.mdx create mode 100644 platform-includes/configuration/integrations/javascript.remix.mdx create mode 100644 platform-includes/configuration/integrations/javascript.sveltekit.mdx create mode 100644 platform-includes/configuration/integrations/javascript.vue.mdx create mode 100644 platform-includes/configuration/rewrite-frames/javascript.bun.mdx create mode 100644 platform-includes/configuration/rewrite-frames/javascript.deno.mdx create mode 100644 platform-includes/configuration/sessiontiming/javascript.bun.mdx create mode 100644 platform-includes/configuration/sessiontiming/javascript.deno.mdx diff --git a/docs/platforms/javascript/common/configuration/application-not-responding.mdx b/docs/platforms/javascript/common/configuration/application-not-responding.mdx index 021685f7c5efe..210872d0d6371 100644 --- a/docs/platforms/javascript/common/configuration/application-not-responding.mdx +++ b/docs/platforms/javascript/common/configuration/application-not-responding.mdx @@ -13,6 +13,11 @@ supported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro keywords: [ "anr", @@ -38,13 +43,11 @@ To enable ANR detection, add the `Anr` integration from the `@sentry/node` packa -ANR detection requires Node 16 or higher. +ANR detection requires Node 16 or higher and can only be used in the Node.js runtime. ```javascript -import * as Sentry from "@sentry/node"; - Sentry.init({ dsn: "___PUBLIC_DSN___", integrations: [Sentry.anrIntegration({ captureStackTrace: true })], diff --git a/docs/platforms/javascript/common/configuration/integrations/anr.mdx b/docs/platforms/javascript/common/configuration/integrations/anr.mdx new file mode 100644 index 0000000000000..2d4d705fbb551 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/anr.mdx @@ -0,0 +1,30 @@ +--- +title: Anr +description: "Capture context about the environment and the device that the client is running on, and add it to events. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro +--- + + + +This integration only works in the Node.js runtime. + + + +_Import name: `Sentry.anrIntegration`_ + +The `anrIntegration` captures Application Not Responding (ANR)/Event Loop Stall errors and reports them as Sentry events. For more details, see the documentation on [ANR](../../application-not-responding). diff --git a/docs/platforms/javascript/common/configuration/integrations/aws.mdx b/docs/platforms/javascript/common/configuration/integrations/aws.mdx new file mode 100644 index 0000000000000..b139b99116e09 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/aws.mdx @@ -0,0 +1,12 @@ +--- +title: Aws +description: "Adds instrumentation for aws-sdk. (default)" +supported: + - javascript.aws-lambda +--- + +_Import name: `Sentry.awsIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +Adds instrumentation for aws-sdk v2 and v3 to automatically create spans. Powered by [`@opentelemetry/instrumentation-aws-sdk`](https://www.npmjs.com/package/@opentelemetry/instrumentation-aws-sdk). diff --git a/docs/platforms/javascript/common/configuration/integrations/awslambda.mdx b/docs/platforms/javascript/common/configuration/integrations/awslambda.mdx new file mode 100644 index 0000000000000..3f90511610d86 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/awslambda.mdx @@ -0,0 +1,12 @@ +--- +title: AwsLambda +description: "Adds instrumentation for AWS Lambda. (default)" +supported: + - javascript.aws-lambda +--- + +_Import name: `Sentry.awsLambdaIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +Adds instrumentation for AWS Lambda to automatically create spans. Powered by [`@opentelemetry/instrumentation-aws-lambda`](https://www.npmjs.com/package/@opentelemetry/instrumentation-aws-lambda). diff --git a/docs/platforms/javascript/common/configuration/integrations/breadcrumbs.mdx b/docs/platforms/javascript/common/configuration/integrations/breadcrumbs.mdx index 4a104fda6699c..04578a56f4bc2 100644 --- a/docs/platforms/javascript/common/configuration/integrations/breadcrumbs.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/breadcrumbs.mdx @@ -1,6 +1,6 @@ --- title: Breadcrumbs -description: "Wraps native APIs to capture breadcrumbs. (default)" +description: "Wraps native browser APIs to capture breadcrumbs. (default)" notSupported: - javascript.node - javascript.aws-lambda @@ -13,10 +13,14 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.breadcrumbsIntegration`_ @@ -24,7 +28,22 @@ _Import name: `Sentry.breadcrumbsIntegration`_ This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). The `breadcrumbsIntegration` wraps native APIs to capture breadcrumbs. -By default, the Sentry SDK wraps all APIs. You can opt out of capturing breadcrumbs for specific parts of your application (for example, you could say don't capture `console.log` calls as breadcrumbs) via the options below. + +By default, the Sentry SDK wraps the `console`, `dom`, fetch`, `history`, and `xhr`browser APIs to add breadcrumbs. You can opt out of capturing breadcrumbs for specific parts of your application (for example, you could say don't capture `console.log` calls as breadcrumbs) via the options below. + +```JavaScript +Sentry.init({ + integrations: [ + Sentry.breadcrumbsIntegration({ + console: true, + dom: true, + fetch: true, + history: true, + xhr: true, + }), + ], +}); +``` ## Options diff --git a/docs/platforms/javascript/common/configuration/integrations/browserapierrors.mdx b/docs/platforms/javascript/common/configuration/integrations/browserapierrors.mdx new file mode 100644 index 0000000000000..0b302531ed122 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/browserapierrors.mdx @@ -0,0 +1,110 @@ +--- +title: BrowserApiErrors +description: "Wraps native time and events APIs (`setTimeout`, `setInterval`, `requestAnimationFrame`, `addEventListener/removeEventListener`) in `try/catch` blocks to handle async exceptions. (default)" +notSupported: + - javascript.electron + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.deno + - javascript.bun +--- + + + +This integration only works inside a browser environment. + + + +_Import name: `Sentry.browserApiErrorsIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +This integration wraps native time and event APIs (`setTimeout`, `setInterval`, `requestAnimationFrame`, `addEventListener/removeEventListener`) in `try/catch` blocks to handle async exceptions. + +```JavaScript +Sentry.init({ + integrations: [ + Sentry.browserApiErrorsIntegration({ + setTimeout: true; + setInterval: true; + requestAnimationFrame: true; + XMLHttpRequest: true; + eventTarget: true; + }), + ], +}); +``` + +## Options + +### `setTimeout` + +_Type: `boolean`_ + +Instrument the `setTimeout` browser built-in method. + +### `setInterval` + +_Type: `boolean`_ + +Instrument the `setInterval` browser built-in method. + +### `requestAnimationFrame` + +_Type: `boolean`_ + +Instrument the `requestAnimationFrame` browser built-in method. + +### `XMLHttpRequest` + +_Type: `boolean`_ + +Instrument the `XMLHttpRequest` browser built-in method. + +### `eventTarget` + +_Type: `boolean | string[]`_ + +Instrument the `addEventListener` browser built-in method for a set number of default event targets. To override the default event targets, provide an array of strings with the event target names. + +List of default event targets: + +- `EventTarget` +- `Window` +- `Node` +- `ApplicationCache` +- `AudioTrackList` +- `BroadcastChannel` +- `ChannelMergerNode` +- `CryptoOperation` +- `EventSource` +- `FileReader` +- `HTMLUnknownElement` +- `IDBDatabase` +- `IDBRequest` +- `IDBTransaction` +- `KeyOperation` +- `MediaController` +- `MessagePort` +- `ModalWindow` +- `Notification` +- `SVGElementInstance` +- `Screen` +- `SharedWorker` +- `TextTrack` +- `TextTrackCue` +- `TextTrackList` +- `WebSocket` +- `WebSocketWorker` +- `Worker` +- `XMLHttpRequest` +- `XMLHttpRequestEventTarget` +- `XMLHttpRequestUpload` diff --git a/docs/platforms/javascript/common/configuration/integrations/browserprofiling.mdx b/docs/platforms/javascript/common/configuration/integrations/browserprofiling.mdx index 593632951437b..623da7784ffe7 100644 --- a/docs/platforms/javascript/common/configuration/integrations/browserprofiling.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/browserprofiling.mdx @@ -1,11 +1,8 @@ --- -title: BrowserProfiling -description: "Collect & view performance insights for JavaScript programs with Sentry’s JavaScript Profiling integration." +title: BrowserTracing +description: "Capture profiling data for the Browser." notSupported: - javascript.cordova - - javascript.wasm - - javascript.bun - - javascript.deno - javascript.node - javascript.aws-lambda - javascript.azure-functions @@ -16,14 +13,20 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.browserProfilingIntegration`_ -[Profiling](/product/profiling/) offers a deeper level of visibility on top of traditional tracing, removing the need for custom instrumentation and enabling precise code-level visibility into your application in a production environment. +[Profiling](/product/profiling/), builds upon [Sentry Performance Monitoring](/product/performance/) to provide precise code-level visibility into browser application execution in a production environment. + +The BrowserProfiling integration sets up automatic performance profiling for your frontend applications. It captures profiles via the [JS Self-Profiling API](https://wicg.github.io/js-self-profiling/) from the browser and sends them to Sentry. To use this integration, you also need to have the [BrowserTracing integration](./browsertracing) enabled. -Read more about setting up Profiling. +Read more about [setting up BrowserProfiling](./../../../profiling/). diff --git a/docs/platforms/javascript/common/configuration/integrations/browsertracing.mdx b/docs/platforms/javascript/common/configuration/integrations/browsertracing.mdx index 310de86c2f9b3..eddb2844c83a7 100644 --- a/docs/platforms/javascript/common/configuration/integrations/browsertracing.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/browsertracing.mdx @@ -13,10 +13,14 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.browserTracingIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/bunserver.mdx b/docs/platforms/javascript/common/configuration/integrations/bunserver.mdx new file mode 100644 index 0000000000000..bc74d4f2aee4e --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/bunserver.mdx @@ -0,0 +1,18 @@ +--- +title: BunServer +description: "Instruments Bun.serve to automatically create transactions and capture errors. (default)" +supported: + - javascript.bun +--- + + + +This integration only works in the Bun runtime. + + + +_Import name: `Sentry.bunServerIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `bunServerIntegration` instruments [`Bun.serve` API](https://bun.sh/docs/api/http) to automatically create transactions and capture errors. diff --git a/docs/platforms/javascript/common/configuration/integrations/connect.mdx b/docs/platforms/javascript/common/configuration/integrations/connect.mdx new file mode 100644 index 0000000000000..4fd51254380c7 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/connect.mdx @@ -0,0 +1,25 @@ +--- +title: Connect +description: "Adds performance instrumentation for Connect. (default)" +supported: + - javascript.node + - javascript.hapi +--- + +For more information on setting up Sentry Connect support, see the [Connect Sentry documentation](/platforms/javascript/guides/connect/). + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.connectIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `connectIntegration` adds instrumentation for the Hapi framework to capture spans using [`@opentelemetry/instrumentation-connect`](https://www.npmjs.com/package/@opentelemetry/instrumentation-connect). + +## Supported Versions + +- Connect `^3.0.0` diff --git a/docs/platforms/javascript/common/configuration/integrations/console.mdx b/docs/platforms/javascript/common/configuration/integrations/console.mdx index 0e723ff18bcef..fcb18ee6f3dc5 100644 --- a/docs/platforms/javascript/common/configuration/integrations/console.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/console.mdx @@ -17,10 +17,14 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun + - javascript.deno --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works inside server environments (Node.js, Bun, Deno). + _Import name: `Sentry.consoleIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/contextlines.mdx b/docs/platforms/javascript/common/configuration/integrations/contextlines.mdx index 468852a5b5f62..db2fb2b47bffb 100644 --- a/docs/platforms/javascript/common/configuration/integrations/contextlines.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/contextlines.mdx @@ -1,6 +1,20 @@ --- title: ContextLines description: "Adds source code from inline JavaScript of the current page's HTML." +notSupported: + - javascript.cordova + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.deno + - javascript.bun --- _Import name: `Sentry.contextLinesIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/denocontext.mdx b/docs/platforms/javascript/common/configuration/integrations/denocontext.mdx new file mode 100644 index 0000000000000..b13c53f1735f0 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/denocontext.mdx @@ -0,0 +1,18 @@ +--- +title: DenoContext +description: "Capture context about the environment and the device that the client is running on, and add it to events. (default)" +supported: + - javascript.deno +--- + + + +This integration only works in the Deno runtime. + + + +_Import name: `Sentry.denoContextIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +Adds Deno related context to events. This includes contexts about `app`, `device`, `os`, `v8`, and `TypeScript`. diff --git a/docs/platforms/javascript/common/configuration/integrations/denocron.mdx b/docs/platforms/javascript/common/configuration/integrations/denocron.mdx new file mode 100644 index 0000000000000..79d677b984a8d --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/denocron.mdx @@ -0,0 +1,20 @@ +--- +title: DenoCron +description: "Instruments Deno.cron to automatically capture cron check-ins." +supported: + - javascript.deno +--- + + + +This integration only works in the Deno runtime. + + + +_Import name: `Sentry.denoCronIntegration`_ + +[Sentry Crons](/product/crons/) allows you to monitor the uptime and performance of any scheduled, recurring job in your application. + +The DenoCron integration sets up automatic monitoring for your cron jobs created by [`Deno.cron`](https://docs.deno.com/deploy/kv/manual/cron). It captures check-ins and sends them to Sentry. + +Read more about [setting up Cron Monitoring for Deno](./../../../crons/). diff --git a/docs/platforms/javascript/common/configuration/integrations/fastify.mdx b/docs/platforms/javascript/common/configuration/integrations/fastify.mdx new file mode 100644 index 0000000000000..87bed6bc6871c --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/fastify.mdx @@ -0,0 +1,25 @@ +--- +title: Fastify +description: "Adds performance instrumentation for Fastify. (default)" +supported: + - javascript.node + - javascript.fastify +--- + +For more information on setting up Sentry Fastify support, see the [Fastify Sentry documentation](/platforms/javascript/guides/fastify/). + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.fastifyIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `fastifyIntegration` adds instrumentation for the Fastify framework to capture spans using [`@opentelemetry/instrumentation-fastify`](https://www.npmjs.com/package/@opentelemetry/instrumentation-fastify). + +## Supported Versions + +- `fastify`: `^3.0.0 || ^4.0.0` diff --git a/docs/platforms/javascript/common/configuration/integrations/globalhandlers.mdx b/docs/platforms/javascript/common/configuration/integrations/globalhandlers.mdx index e6184afec9576..eff7aea4c6904 100644 --- a/docs/platforms/javascript/common/configuration/integrations/globalhandlers.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/globalhandlers.mdx @@ -13,10 +13,13 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works in the Browser and Deno runtimes. + _Import name: `Sentry.globalHandlersIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/googlecloudgrpc.mdx b/docs/platforms/javascript/common/configuration/integrations/googlecloudgrpc.mdx new file mode 100644 index 0000000000000..ec4ce3edf372b --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/googlecloudgrpc.mdx @@ -0,0 +1,12 @@ +--- +title: GoogleCloudGrpc +description: "Google Cloud Platform service requests tracking for GRPC APIs. (default)" +supported: + - javascript.gcp-functions +--- + +_Import name: `Sentry.googleCloudGrpcIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +Adds instrumentation for GRPC APIs on Google Cloud to automatically create spans. diff --git a/docs/platforms/javascript/common/configuration/integrations/googlecloudhttp.mdx b/docs/platforms/javascript/common/configuration/integrations/googlecloudhttp.mdx new file mode 100644 index 0000000000000..601e9ce32ac9a --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/googlecloudhttp.mdx @@ -0,0 +1,12 @@ +--- +title: GoogleCloudHttp +description: "Google Cloud Platform service requests tracking for RESTful APIs. (default)" +supported: + - javascript.gcp-functions +--- + +_Import name: `Sentry.googleCloudHttpIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +Adds instrumentation for RESTful APIs on Google Cloud to automatically create spans. diff --git a/docs/platforms/javascript/common/configuration/integrations/graphql.mdx b/docs/platforms/javascript/common/configuration/integrations/graphql.mdx new file mode 100644 index 0000000000000..5f8d84180e2ed --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/graphql.mdx @@ -0,0 +1,53 @@ +--- +title: GraphQL +description: "Adds instrumentation for GraphQL. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.graphqlIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `graphqlIntegration` adds instrumentation for the `mongodb` library to capture spans using [`@opentelemetry/instrumentation-mongodb`](https://www.npmjs.com/package/@opentelemetry/instrumentation-mongodb). + +## Supported Versions + +- `graphql`: `>=3.3 <7` + +## Options + +### `ignoreResolveSpans` + +_Type: `boolean`_ + +If spans for resolver functions should not be created. Default is `true`. + +### `ignoreTrivalResolveSpans` + +_Type: `boolean`_ + +If spans for the execution of the default resolver on object properties should not be created. Default is `true`. + +When a resolver function is not defined on the schema for a field, GraphQL will use the default resolver which just looks for a property with that name on the object. If the property is not a function, it's not very interesting to trace. This option can reduce noise and number of spans created. diff --git a/docs/platforms/javascript/common/configuration/integrations/hapi.mdx b/docs/platforms/javascript/common/configuration/integrations/hapi.mdx new file mode 100644 index 0000000000000..735ccc8a02079 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/hapi.mdx @@ -0,0 +1,25 @@ +--- +title: Hapi +description: "Adds performance instrumentation for Hapi. (default)" +supported: + - javascript.node + - javascript.hapi +--- + +For more information on setting up Sentry Hapi support, see the [Hapi Sentry documentation](/platforms/javascript/guides/hapi/). + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.hapiIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `hapiIntegration` adds instrumentation for the Hapi framework to capture spans using [`@opentelemetry/instrumentation-hapi`](https://www.npmjs.com/package/@opentelemetry/instrumentation-hapi). + +## Supported Versions + +- Hapi: `>=17.0.0 <22` diff --git a/docs/platforms/javascript/common/configuration/integrations/http.mdx b/docs/platforms/javascript/common/configuration/integrations/http.mdx index 33167a6bb1dbf..9dfeec6016db0 100644 --- a/docs/platforms/javascript/common/configuration/integrations/http.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/http.mdx @@ -17,10 +17,13 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works inside server environments (Node.js, Bun, Deno). + _Import name: `Sentry.httpIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/httpclient.mdx b/docs/platforms/javascript/common/configuration/integrations/httpclient.mdx index 5ffac7307cdfa..cc217eb762d41 100644 --- a/docs/platforms/javascript/common/configuration/integrations/httpclient.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/httpclient.mdx @@ -12,10 +12,14 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.httpClientIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/httpcontext.mdx b/docs/platforms/javascript/common/configuration/integrations/httpcontext.mdx index 57eaaf5414aad..9f2f312feb982 100644 --- a/docs/platforms/javascript/common/configuration/integrations/httpcontext.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/httpcontext.mdx @@ -13,10 +13,14 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.httpContextIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/inboundfilters.mdx b/docs/platforms/javascript/common/configuration/integrations/inboundfilters.mdx index d6ff43303f885..93193f5da606b 100644 --- a/docs/platforms/javascript/common/configuration/integrations/inboundfilters.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/inboundfilters.mdx @@ -7,15 +7,13 @@ _Import name: `Sentry.inboundFiltersIntegration`_ This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). -This integration allows you to ignore specific errors based on the type, -message, or URLs in a given exception. +This integration allows you to ignore specific errors based on the type, message, or URLs in a given exception. By default, it'll ignore errors that start with `Script error` or `Javascript error: Script error`. -To configure this integration, use the `ignoreErrors`, `ignoreTransactions`, `denyUrls`, -and `allowUrls` SDK options directly. For example: +To configure this integration, use the `ignoreErrors`, `ignoreTransactions`, `denyUrls`, and `allowUrls` SDK options directly. For example: -```javascript +```JavaScript Sentry.init({ ignoreErrors: ["ignore-this-error"], }); @@ -24,8 +22,9 @@ Sentry.init({ ## Options - Remember to pass these options to the root Sentry.init call, not the - integration! + +Remember to pass these options to the root Sentry.init call, not the integration! + {" "} ### `ignoreErrors` diff --git a/docs/platforms/javascript/common/configuration/integrations/index.mdx b/docs/platforms/javascript/common/configuration/integrations/index.mdx index 46ba0d46450ae..92f73f6e08b13 100644 --- a/docs/platforms/javascript/common/configuration/integrations/index.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/index.mdx @@ -4,20 +4,13 @@ sidebar_order: 30 description: "Learn more about how integrations extend the functionality of our SDK to cover common libraries and environments automatically." --- -Sentry provides a number of integrations which are designed to add automatic instrumentation to your application. Some of these integrations are enabled by default, while others have to be explicitly enabled. +The Sentry SDK uses integrations to hook into the functionality of popular libraries to automatically instrument your application and give you the best data out of the box. - +Integrations automatically add error instrumentation, performance instrumentation, and/or extra context information to your application. Some are enabled by default, but you can disable them or modify their settings. -## Integration Usage In Next.js + -Next.js can operate within three runtimes: the Node.js runtime, the browser runtime, and the Edge runtime. -However, it's important to note that not all integrations are compatible with all of these runtimes. - -Depending on whether an integration enhances the functionality of a particular runtime, such as the BrowserTracing integration for the browser runtime or the RequestData integration for the Node.js runtime, you can only include these integrations in their respective configuration files: - -- For the browser runtime, add integrations to `sentry.client.config.ts`. -- For Node.js, add integrations to `sentry.server.config.ts`. -- For the Edge runtime, add integrations to `sentry.edge.config.ts`. + @@ -61,7 +54,9 @@ You can lazy load pluggable integrations via `Sentry.lazyLoadIntegration()`. Thi ```javascript async function loadHttpClient() { - const httpClientIntegration = await Sentry.lazyLoadIntegration('httpClientIntegration'); + const httpClientIntegration = await Sentry.lazyLoadIntegration( + "httpClientIntegration" + ); Sentry.addIntegration(httpClientIntegration()); } ``` @@ -87,7 +82,6 @@ Lazy loading is available for the following integrations: - `sessionTimingIntegration` - `browserProfilingIntegration` - ## Removing a Default Integration diff --git a/docs/platforms/javascript/common/configuration/integrations/koa.mdx b/docs/platforms/javascript/common/configuration/integrations/koa.mdx new file mode 100644 index 0000000000000..7fa46b7609f60 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/koa.mdx @@ -0,0 +1,26 @@ +--- +title: Koa +description: "Adds performance instrumentation for Koa. (default)" +supported: + - javascript.node + - javascript.koa +--- + +For more information on setting up Sentry Koa support, see the [Koa Sentry documentation](/platforms/javascript/guides/koa/). + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.koaIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `koaIntegration` adds instrumentation for the Koa framework to capture spans using [`@opentelemetry/instrumentation-koa`](https://www.npmjs.com/package/@opentelemetry/instrumentation-koa). + +## Supported Versions + +- `koa`: `^2.0.0` +- `@koa/router`: `>=8` diff --git a/docs/platforms/javascript/common/configuration/integrations/linkederrors.mdx b/docs/platforms/javascript/common/configuration/integrations/linkederrors.mdx index 2caf9f4c88fd7..77ea61c97503d 100644 --- a/docs/platforms/javascript/common/configuration/integrations/linkederrors.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/linkederrors.mdx @@ -7,7 +7,7 @@ _Import name: `Sentry.linkedErrorsIntegration`_ This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). -This integration allows you to configure linked errors. They’ll be recursively read up to a specified limit, then lookup will be performed by a specific key. By default, the Sentry SDK sets the limit to five and the key used is `"cause"`. +This integration allows you to configure linked errors. They'll be recursively read up to a specified limit, then lookup will be performed by a specific key. By default, the Sentry SDK sets the limit to five and the key used is `"cause"`. ## Options diff --git a/docs/platforms/javascript/common/configuration/integrations/localvariables.mdx b/docs/platforms/javascript/common/configuration/integrations/localvariables.mdx index 22aa8eef60659..d3dfcab2a9751 100644 --- a/docs/platforms/javascript/common/configuration/integrations/localvariables.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/localvariables.mdx @@ -17,17 +17,27 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun + - javascript.deno --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works in the Node.js runtime. + _Import name: `Sentry.localVariablesIntegration`_ This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). -This integration captures local variables to exception frames. +This integration captures local variables to exception frames. To enable capturing local variables via the integration, set `includeLocalVariable: true` in the SDK configuration. + +```JavaScript +Sentry.init({ + includeLocalVariables: true, +}); +``` ## Options diff --git a/docs/platforms/javascript/common/configuration/integrations/modulemetadata.mdx b/docs/platforms/javascript/common/configuration/integrations/modulemetadata.mdx index af02c335e7e31..988b219ef6d1f 100644 --- a/docs/platforms/javascript/common/configuration/integrations/modulemetadata.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/modulemetadata.mdx @@ -13,10 +13,16 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.moduleMetadataIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/modules.mdx b/docs/platforms/javascript/common/configuration/integrations/modules.mdx index bf94ccecc2870..f1c5a1323d2a2 100644 --- a/docs/platforms/javascript/common/configuration/integrations/modules.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/modules.mdx @@ -17,10 +17,14 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun + - javascript.deno --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works inside server environments (Node.js, Bun, Deno). + _Import name: `Sentry.modulesIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/mongo.mdx b/docs/platforms/javascript/common/configuration/integrations/mongo.mdx new file mode 100644 index 0000000000000..7f9b9cec3d893 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/mongo.mdx @@ -0,0 +1,37 @@ +--- +title: MongoDB +description: "Adds instrumentation for MongoDB. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.mongoIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `mongoIntegration` adds instrumentation for the `mongodb` library to capture spans using [`@opentelemetry/instrumentation-mongodb`](https://www.npmjs.com/package/@opentelemetry/instrumentation-mongodb). + +## Supported Versions + +- `mongodb`: `>=3.3 <7` diff --git a/docs/platforms/javascript/common/configuration/integrations/mongoose.mdx b/docs/platforms/javascript/common/configuration/integrations/mongoose.mdx new file mode 100644 index 0000000000000..3df9c7f6c9f75 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/mongoose.mdx @@ -0,0 +1,37 @@ +--- +title: Mongoose +description: "Adds instrumentation for Mongoose. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.mongooseIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `mongooseIntegration` adds instrumentation for the `mongoose` library to capture spans using [`@opentelemetry/instrumentation-mongoose`](https://www.npmjs.com/package/@opentelemetry/instrumentation-mongoose). + +## Supported Versions + +- `mongoose`: `>=5.9.7 <7` diff --git a/docs/platforms/javascript/common/configuration/integrations/mysql.mdx b/docs/platforms/javascript/common/configuration/integrations/mysql.mdx new file mode 100644 index 0000000000000..2a24fe6aeef3a --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/mysql.mdx @@ -0,0 +1,37 @@ +--- +title: MySQL +description: "Adds instrumentation for MySQL. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.mysqlIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `mysqlIntegration` adds instrumentation for the `mysql` library to capture spans using [`@opentelemetry/instrumentation-mysql`](https://www.npmjs.com/package/@opentelemetry/instrumentation-mysql). + +## Supported Versions + +- `mysql`: `2.x` diff --git a/docs/platforms/javascript/common/configuration/integrations/mysql2.mdx b/docs/platforms/javascript/common/configuration/integrations/mysql2.mdx new file mode 100644 index 0000000000000..0822fd4beee72 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/mysql2.mdx @@ -0,0 +1,37 @@ +--- +title: MySQL2 +description: "Adds instrumentation for MySQL2. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.mysql2Integration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `mysql2Integration` adds instrumentation for the `mysql2` library to capture spans using [`@opentelemetry/instrumentation-mysql2`](https://www.npmjs.com/package/@opentelemetry/instrumentation-mysql2). + +## Supported Versions + +- `mysql2`: `>= 1.4.2, < 4.0` diff --git a/docs/platforms/javascript/common/configuration/integrations/nest.mdx b/docs/platforms/javascript/common/configuration/integrations/nest.mdx new file mode 100644 index 0000000000000..ff8d6c59d7e69 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/nest.mdx @@ -0,0 +1,25 @@ +--- +title: Nest.js +description: "Adds performance instrumentation for Nest.js. (default)" +supported: + - javascript.node + - javascript.nestjs +--- + +For more information on setting up Sentry Nest.js support, see the [Nest.js Sentry documentation](/platforms/javascript/guides/nestjs/). + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.nestIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `nestIntegration` adds instrumentation for the Nest.js framework to capture spans using [`@opentelemetry/instrumentation-nestjs-core`](https://www.npmjs.com/package/@opentelemetry/instrumentation-nestjs-core). + +## Supported Versions + +- Nest.js `>=4.0.0` diff --git a/docs/platforms/javascript/common/configuration/integrations/nodecontext.mdx b/docs/platforms/javascript/common/configuration/integrations/nodecontext.mdx index 2169f652a411e..6c49e7d8a7b76 100644 --- a/docs/platforms/javascript/common/configuration/integrations/nodecontext.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/nodecontext.mdx @@ -17,10 +17,13 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works in the Node.js runtime. + _Import name: `Sentry.nodeContextIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/nodefetch.mdx b/docs/platforms/javascript/common/configuration/integrations/nodefetch.mdx index b6dd350f56ab5..e8235cd8f2e34 100644 --- a/docs/platforms/javascript/common/configuration/integrations/nodefetch.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/nodefetch.mdx @@ -17,10 +17,13 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works in the Node.js and Bun runtimes. + _Import name: `Sentry.nativeNodeFetchIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/nodeprofiling.mdx b/docs/platforms/javascript/common/configuration/integrations/nodeprofiling.mdx index 47dbd81a803f4..38f6ff494ae16 100644 --- a/docs/platforms/javascript/common/configuration/integrations/nodeprofiling.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/nodeprofiling.mdx @@ -1,11 +1,7 @@ --- -title: ProfilingIntegration -description: "Collect & view performance insights for JavaScript Node programs with Sentry’s Node Profiling integration." +title: NodeProfiling +description: "Capture profiling data for Node.js applications." supported: - - javascript.cordova - - javascript.wasm - - javascript.bun - - javascript.deno - javascript.node - javascript.aws-lambda - javascript.azure-functions @@ -16,14 +12,23 @@ supported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro --- - This integration only works inside a Node environment. + +This integration only works in the Node.js runtime. + -_Import name: `Sentry.nodeProfilingIntegration`_ +`nodeProfilingIntegration` must be imported from the `@sentry/profiling-node` package. + +[Profiling](/product/profiling/), builds upon [Sentry Performance Monitoring](/product/performance/) to provide precise code-level visibility into browser application execution in a production environment. -[Profiling](/product/profiling/) offers a deeper level of visibility on top of traditional tracing, removing the need for custom instrumentation and enabling precise code-level visibility into your application in a production environment. +The NodeProfiling integration sets up automatic performance profiling for your Node.js applications. It captures profiles via v8 and sends them to Sentry. To use this integration, you also need to have the performance monitoring enabled. -Read more about setting up Profiling. +Read more about [setting up NodeProfiling](./../../../profiling/). diff --git a/docs/platforms/javascript/common/configuration/integrations/normalizepath.mdx b/docs/platforms/javascript/common/configuration/integrations/normalizepath.mdx new file mode 100644 index 0000000000000..383d4504093ce --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/normalizepath.mdx @@ -0,0 +1,18 @@ +--- +title: NormalizePath +description: "Normalises paths to the app root directory. (default)" +supported: + - javascript.deno +--- + + + +This integration only works in the Deno runtime. + + + +_Import name: `Sentry.normalizePathsIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +Normalises paths to the app root directory so that error stack frames can be processed by Sentry. diff --git a/docs/platforms/javascript/common/configuration/integrations/onuncaughtexception.mdx b/docs/platforms/javascript/common/configuration/integrations/onuncaughtexception.mdx index 3c0d0084c94b3..584f9763ef72c 100644 --- a/docs/platforms/javascript/common/configuration/integrations/onuncaughtexception.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/onuncaughtexception.mdx @@ -17,10 +17,14 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun + - javascript.deno --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works inside server environments (Node.js, Bun, Deno). + _Import name: `Sentry.onUncaughtExceptionIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/postgres.mdx b/docs/platforms/javascript/common/configuration/integrations/postgres.mdx new file mode 100644 index 0000000000000..5450fa5b02fcb --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/postgres.mdx @@ -0,0 +1,37 @@ +--- +title: Postgres +description: "Adds instrumentation for Postgres. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.postgresIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `postgresIntegration` adds instrumentation for the `pg` library to capture spans using [`@opentelemetry/instrumentation-pg`](https://www.npmjs.com/package/@opentelemetry/instrumentation-pg). + +## Supported Versions + +- `pg`: `>=8 <9` diff --git a/docs/platforms/javascript/common/configuration/integrations/prisma.mdx b/docs/platforms/javascript/common/configuration/integrations/prisma.mdx new file mode 100644 index 0000000000000..f0d6120b35da3 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/prisma.mdx @@ -0,0 +1,30 @@ +--- +title: Prisma +description: "Adds instrumentation for Prisma. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.prismaIntegration`_ + +The `prismaIntegration` adds instrumentation for the `prisma` library to capture spans using [`@prisma/instrumentation`](https://www.npmjs.com/package/@prisma/instrumentation). diff --git a/docs/platforms/javascript/common/configuration/integrations/redis.mdx b/docs/platforms/javascript/common/configuration/integrations/redis.mdx new file mode 100644 index 0000000000000..eb8f86f0077f2 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/redis.mdx @@ -0,0 +1,37 @@ +--- +title: Redis +description: "Adds instrumentation for Redis. (default)" +supported: + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.electron + - javascript.nextjs + - javascript.sveltekit + - javascript.remix + - javascript.astro + - javascript.bun +--- + + + +This integration only works in the Node.js and Bun runtimes. + + + +_Import name: `Sentry.redisIntegration`_ + +This integration is enabled by default when performance monitoring is enabled. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `redisIntegration` adds instrumentation for the `ioredis` library to capture spans using [`@opentelemetry/instrumentation-ioredis`](https://www.npmjs.com/package/@opentelemetry/instrumentation-ioredis). + +## Supported Versions + +- `ioredis`: `>=2.0.0 <6` diff --git a/docs/platforms/javascript/common/configuration/integrations/replay.mdx b/docs/platforms/javascript/common/configuration/integrations/replay.mdx index ba2f0c895d396..33cf5c6b21200 100644 --- a/docs/platforms/javascript/common/configuration/integrations/replay.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/replay.mdx @@ -16,10 +16,14 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.replayIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/replaycanvas.mdx b/docs/platforms/javascript/common/configuration/integrations/replaycanvas.mdx new file mode 100644 index 0000000000000..bb269451450f8 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/replaycanvas.mdx @@ -0,0 +1,39 @@ +--- +title: ReplayCanvas +description: "Capture session replays from HTML canvas elements." +notSupported: + - javascript.cordova + - javascript.wasm + - javascript.bun + - javascript.deno + - javascript.node + - javascript.aws-lambda + - javascript.azure-functions + - javascript.connect + - javascript.express + - javascript.fastify + - javascript.gcp-functions + - javascript.hapi + - javascript.koa + - javascript.nestjs + - javascript.deno + - javascript.bun +--- + + + +This integration only works inside a browser environment. + + + +_Import name: `Sentry.replayCanvasIntegration`_ + +The Replay Canvas integration can be used to capture [Session Replays](/product/session-replay/) from HTML canvas elements. It requires the Replay integration to be enabled. + + + +There is currently no PII scrubbing in canvas recordings! + + + +Read more about [setting up Session Replay with the Canvas integration](./../../../session-replay#canvas-recording). diff --git a/docs/platforms/javascript/common/configuration/integrations/reportingobserver.mdx b/docs/platforms/javascript/common/configuration/integrations/reportingobserver.mdx index 990b34f7a84e8..b471db8f537d5 100644 --- a/docs/platforms/javascript/common/configuration/integrations/reportingobserver.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/reportingobserver.mdx @@ -12,10 +12,14 @@ notSupported: - javascript.hapi - javascript.koa - javascript.nestjs + - javascript.deno + - javascript.bun --- - This integration only works inside a browser environment. + +This integration only works inside a browser environment. + _Import name: `Sentry.reportingObserverIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/requestdata.mdx b/docs/platforms/javascript/common/configuration/integrations/requestdata.mdx index 1824d5468fe5f..9c6ce80d87f84 100644 --- a/docs/platforms/javascript/common/configuration/integrations/requestdata.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/requestdata.mdx @@ -18,10 +18,14 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun + - javascript.deno --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works inside server environments (Node.js, Bun, Deno). + _Import name: `Sentry.requestDataIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/trycatch.mdx b/docs/platforms/javascript/common/configuration/integrations/trycatch.mdx deleted file mode 100644 index c7c38583d9891..0000000000000 --- a/docs/platforms/javascript/common/configuration/integrations/trycatch.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: TryCatch -description: "Wraps native time and events APIs (`setTimeout`, `setInterval`, `requestAnimationFrame`, `addEventListener/removeEventListener`) in `try/catch` blocks to handle async exceptions. (default)" -notSupported: - - javascript.electron - - javascript.node - - javascript.aws-lambda - - javascript.azure-functions - - javascript.connect - - javascript.express - - javascript.fastify - - javascript.gcp-functions - - javascript.hapi - - javascript.koa - - javascript.nestjs ---- - - - This integration only works inside a browser environment. - - -_Import name: `Sentry.browserApiErrorsIntegration`_ - -This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). - -This integration wraps native time and event APIs (`setTimeout`, `setInterval`, `requestAnimationFrame`, `addEventListener/removeEventListener`) in `try/catch` blocks to handle async exceptions. diff --git a/docs/platforms/javascript/common/configuration/integrations/unhandledrejection.mdx b/docs/platforms/javascript/common/configuration/integrations/unhandledrejection.mdx index 161352450e9aa..e38c66fa38a5e 100644 --- a/docs/platforms/javascript/common/configuration/integrations/unhandledrejection.mdx +++ b/docs/platforms/javascript/common/configuration/integrations/unhandledrejection.mdx @@ -17,10 +17,14 @@ supported: - javascript.sveltekit - javascript.remix - javascript.astro + - javascript.bun + - javascript.deno --- - This integration only works inside server environments (Node.js, Bun, Deno). + +This integration only works inside server environments (Node.js, Bun, Deno). + _Import name: `Sentry.onUnhandledRejectionIntegration`_ diff --git a/docs/platforms/javascript/common/configuration/integrations/vue.mdx b/docs/platforms/javascript/common/configuration/integrations/vue.mdx new file mode 100644 index 0000000000000..1584b55a6dfb3 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/vue.mdx @@ -0,0 +1,12 @@ +--- +title: Vue +description: "Add error and span instrumentation to Vue applications. (default)" +supported: + - javascript.vue +--- + +_Import name: `Sentry.vueIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +Adds error and span instrumentation for Vue applications. diff --git a/docs/platforms/javascript/common/configuration/integrations/wintercgfetch.mdx b/docs/platforms/javascript/common/configuration/integrations/wintercgfetch.mdx new file mode 100644 index 0000000000000..e543ae62760b3 --- /dev/null +++ b/docs/platforms/javascript/common/configuration/integrations/wintercgfetch.mdx @@ -0,0 +1,32 @@ +--- +title: WinterCGFetch +description: "Creates spans and attaches tracing headers to fetch requests on edge runtimes. (default)" +supported: + - javascript.nextjs +--- + + + +This integration only works in the Edge runtime. + + + +_Import name: `Sentry.winterCGFetchIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +The `winterCGFetchIntegration` creates spans and attaches tracing headers to fetch requests on the Edge runtime. + +## Options + +### `breadcrumbs` + +_Type: `boolean`_ + +If set to false, no breadcrumbs will be captured. + +### `shouldCreateSpanForRequest` + +_Type: `(url: string) => boolean`_ + +Allows you to define a method to determine whether or not to create spans to track outgoing requests to the given URL. By default, spans will be created for all outgoing requests. diff --git a/docs/platforms/javascript/common/configuration/tree-shaking/index.mdx b/docs/platforms/javascript/common/configuration/tree-shaking/index.mdx index a889439310e3f..17026ba1afe23 100644 --- a/docs/platforms/javascript/common/configuration/tree-shaking/index.mdx +++ b/docs/platforms/javascript/common/configuration/tree-shaking/index.mdx @@ -34,7 +34,6 @@ The Sentry SDK ships with code that is not strictly required for it to collect y you use certain features. - ### Tree Shaking With Sentry Bundler Plugins @@ -66,7 +65,6 @@ For more details, see the documentation for the specific bundler plugin you're u - ### Tree Shaking With Next.js diff --git a/docs/platforms/javascript/common/session-replay/index.mdx b/docs/platforms/javascript/common/session-replay/index.mdx index 3eb91dd19a1d8..9f9fc96c36aa2 100644 --- a/docs/platforms/javascript/common/session-replay/index.mdx +++ b/docs/platforms/javascript/common/session-replay/index.mdx @@ -39,13 +39,19 @@ To set up the integration, add the following to your Sentry initialization. Ther - + + ### Canvas Recording - There is currently no PII scrubbing in canvas recordings! + +There is currently no PII scrubbing in canvas recordings! + If you want to record HTML canvas elements, you'll need to add an additional integration in your Sentry configuration. The canvas integration is exported from the browser SDK, so no additional package is required. Canvas recording is opt-in and will be tree-shaken from your bundle if it's not being used: @@ -71,11 +77,12 @@ Sentry.replayCanvasIntegration({ Call the the following `snapshot()` method inside your application's paint loop. `snapshot()` needs to be called in the same execution loop as the canvas draw commands, otherwise you may be snapshotting empty canvas buffers. This is due to how WebGL works when `preserveDrawingBuffer` is `false`. ```javascript - function paint() { - const canvasRef = document.querySelector("#my-canvas"); - Sentry.getClient().getIntegrationByName("ReplayCanvas").snapshot(canvasRef); - } +function paint() { + const canvasRef = document.querySelector("#my-canvas"); + Sentry.getClient().getIntegrationByName("ReplayCanvas").snapshot(canvasRef); +} ``` + ### Content Security Policy (CSP) @@ -99,8 +106,12 @@ child-src 'self' blob: If you're unable to update your CSP policy to allow inline web workers, you can also [use a custom compression worker](./configuration#using-a-custom-compression-worker) instead. -### React Component Names -If you want to capture react component names in Sentry, you'll need to configure [React component name capturing](/platforms/javascript/guides/react/features/component-names). This will allow you to identify elements by the component name instead of the selector. The component names are searchable and will be surfaced in breadcrumbs, rage clicks, and dead clicks. + ### React Component Names If you want to capture react component names in + Sentry, you'll need to configure [React component name + capturing](/platforms/javascript/guides/react/features/component-names). This + will allow you to identify elements by the component name instead of the + selector. The component names are searchable and will be surfaced in + breadcrumbs, rage clicks, and dead clicks. ## User Session diff --git a/docs/platforms/javascript/guides/bun/configuration/integrations/contextlines.mdx b/docs/platforms/javascript/guides/bun/configuration/integrations/contextlines.mdx new file mode 100644 index 0000000000000..7b3af58727490 --- /dev/null +++ b/docs/platforms/javascript/guides/bun/configuration/integrations/contextlines.mdx @@ -0,0 +1,20 @@ +--- +title: ContextLines +description: "Adds source code to your stack frames. (default)" +--- + +_Import name: `Sentry.contextLinesIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +This integration adds source code to your stack frames. It ensures that you can see the code that caused the error directly in the Sentry UI. + + + +## Options + +### `frameContextLines` + +_Type: `number`_ + +The number of lines to collect around each stack frame's line number. Defaults to 7. diff --git a/docs/platforms/javascript/guides/deno/configuration/integrations/contextlines.mdx b/docs/platforms/javascript/guides/deno/configuration/integrations/contextlines.mdx new file mode 100644 index 0000000000000..7b3af58727490 --- /dev/null +++ b/docs/platforms/javascript/guides/deno/configuration/integrations/contextlines.mdx @@ -0,0 +1,20 @@ +--- +title: ContextLines +description: "Adds source code to your stack frames. (default)" +--- + +_Import name: `Sentry.contextLinesIntegration`_ + +This integration is enabled by default. If you'd like to modify your default integrations, read [this](./../#modifying-default-integrations). + +This integration adds source code to your stack frames. It ensures that you can see the code that caused the error directly in the Sentry UI. + + + +## Options + +### `frameContextLines` + +_Type: `number`_ + +The number of lines to collect around each stack frame's line number. Defaults to 7. diff --git a/docs/platforms/php/guides/laravel/usage/index.mdx b/docs/platforms/php/guides/laravel/usage/index.mdx index 9c5f8a2b6fd3a..fa5915d3ac42f 100644 --- a/docs/platforms/php/guides/laravel/usage/index.mdx +++ b/docs/platforms/php/guides/laravel/usage/index.mdx @@ -9,7 +9,7 @@ Sentry's SDK hooks into your runtime environment and automatically reports error The most common form of capturing is to capture errors. What can be captured as an error varies by platform. In general, if you have something that looks like an exception it can be captured. For some SDKs you can also omit the argument to `capture_exception` and Sentry will attempt to capture the current exception. It can also be useful to manually report errors or messages to Sentry. -Separately to capturing you can also record the breadcrumbs that lead up to an event. Breadcrumbs are different from events: they will not create an event in Sentry, but will be buffered until the next event is sent. Learn more about breadcrumbs in our Breadcrumbs documentation. +Separately to capture you can also record the breadcrumbs that lead up to an event. Breadcrumbs are different from events: they will not create an event in Sentry, but will be buffered until the next event is sent. Learn more about breadcrumbs in our Breadcrumbs documentation. ## Capturing Errors @@ -95,7 +95,7 @@ If you're using log channels to log your exceptions and are also logging excepti To configure Sentry as a log channel, add the following config to the `channels` section in `config/logging.php`. -If this file does not exist, run `php artisan config:publish logging` to publish it. +If this file does not exist, run `php artisan config:publish logging` to publish it. ```php {filename:config/logging.php} 'channels' => [ diff --git a/docs/platforms/python/integrations/logging/index.mdx b/docs/platforms/python/integrations/logging/index.mdx index 4d5741f76261d..dde8bdf605ea3 100644 --- a/docs/platforms/python/integrations/logging/index.mdx +++ b/docs/platforms/python/integrations/logging/index.mdx @@ -106,6 +106,6 @@ only certain messages. See Filterin Instead of using `LoggingIntegration`, you can use two regular logging `logging.Handler` subclasses that the integration exports. -**Usually, you don't need this.** You _can_ use this together with `default_integrations=False` if you want to opt into what the Sentry Python SDK captures. However, correctly setting up logging is difficult. Also, an opt-in approach to capturing data will miss errors you may not think of on your own. +**Usually, you don't need this.** You _can_ use this together with `default_integrations=False` if you want to opt into what the Sentry Python SDK captures. However, correctly setting up logging is difficult. Also, an opt-in approach to capture data will miss errors you may not think of on your own. See the [API documentation](https://getsentry.github.io/sentry-python/integrations.html#module-sentry_sdk.integrations.logging) for more information. diff --git a/platform-includes/configuration/capture-console/javascript.bun.mdx b/platform-includes/configuration/capture-console/javascript.bun.mdx new file mode 100644 index 0000000000000..cb3cabe5fb488 --- /dev/null +++ b/platform-includes/configuration/capture-console/javascript.bun.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "@sentry/bun"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.captureConsoleIntegration()], +}); +``` diff --git a/platform-includes/configuration/capture-console/javascript.deno.mdx b/platform-includes/configuration/capture-console/javascript.deno.mdx new file mode 100644 index 0000000000000..b867eae5e576e --- /dev/null +++ b/platform-includes/configuration/capture-console/javascript.deno.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "https://deno.land/x/sentry/index.mjs"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.captureConsoleIntegration()], +}); +``` diff --git a/platform-includes/configuration/contextlines/javascript.bun.mdx b/platform-includes/configuration/contextlines/javascript.bun.mdx new file mode 100644 index 0000000000000..97932da7b8b57 --- /dev/null +++ b/platform-includes/configuration/contextlines/javascript.bun.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "@sentry/bun"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.contextLinesIntegration()], +}); +``` diff --git a/platform-includes/configuration/contextlines/javascript.deno.mdx b/platform-includes/configuration/contextlines/javascript.deno.mdx new file mode 100644 index 0000000000000..a50ca2e8b9ae7 --- /dev/null +++ b/platform-includes/configuration/contextlines/javascript.deno.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "https://deno.land/x/sentry/index.mjs"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.contextLinesIntegration()], +}); +``` diff --git a/platform-includes/configuration/debug/javascript.bun.mdx b/platform-includes/configuration/debug/javascript.bun.mdx new file mode 100644 index 0000000000000..0c432dca1e359 --- /dev/null +++ b/platform-includes/configuration/debug/javascript.bun.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "@sentry/node"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.debugIntegration()], +}); +``` diff --git a/platform-includes/configuration/debug/javascript.deno.mdx b/platform-includes/configuration/debug/javascript.deno.mdx new file mode 100644 index 0000000000000..64ed8250b85fc --- /dev/null +++ b/platform-includes/configuration/debug/javascript.deno.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "https://deno.land/x/sentry/index.mjs"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.debugIntegration()], +}); +``` diff --git a/platform-includes/configuration/dedupe/javascript.bun.mdx b/platform-includes/configuration/dedupe/javascript.bun.mdx new file mode 100644 index 0000000000000..7eb7a67423a94 --- /dev/null +++ b/platform-includes/configuration/dedupe/javascript.bun.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "@sentry/bun"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.dedupeIntegration()], +}); +``` diff --git a/platform-includes/configuration/dedupe/javascript.deno.mdx b/platform-includes/configuration/dedupe/javascript.deno.mdx new file mode 100644 index 0000000000000..6eacb782d8420 --- /dev/null +++ b/platform-includes/configuration/dedupe/javascript.deno.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "https://deno.land/x/sentry/index.mjs"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.dedupeIntegration()], +}); +``` diff --git a/platform-includes/configuration/extra-error-data/javascript.bun.mdx b/platform-includes/configuration/extra-error-data/javascript.bun.mdx new file mode 100644 index 0000000000000..43800e789627d --- /dev/null +++ b/platform-includes/configuration/extra-error-data/javascript.bun.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "@sentry/bun"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.extraErrorDataIntegration()], +}); +``` diff --git a/platform-includes/configuration/extra-error-data/javascript.deno.mdx b/platform-includes/configuration/extra-error-data/javascript.deno.mdx new file mode 100644 index 0000000000000..0741bcce2c928 --- /dev/null +++ b/platform-includes/configuration/extra-error-data/javascript.deno.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "https://deno.land/x/sentry/index.mjs"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.extraErrorDataIntegration()], +}); +``` diff --git a/platform-includes/configuration/integrations/javascript.astro.mdx b/platform-includes/configuration/integrations/javascript.astro.mdx new file mode 100644 index 0000000000000..e05b6a9a466f1 --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.astro.mdx @@ -0,0 +1,63 @@ +The Astro SDK initializes the SDK in two runtimes: Browser and Node.js. +However, it's important to note that not all integrations are compatible with all of these runtimes. + +Depending on whether an integration enhances the functionality of a particular runtime, such as the `BrowserTracing` integration for the browser runtime or the `RequestData` integration for the Node.js.js runtime, you can only include these integrations in their respective configuration files: + +- For the astro runtime integrations, add integrations to `Sentry.init` in `sentry.client.config.js` +- For the Node.js runtime integrations, add integrations to `Sentry.init` in `sentry.server.config.js` + +### Common Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | + +### Browser Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Replay** | **Additional Context** | +| ----------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`browserApiErrorsIntegration`](./browserapierrors) | ✓ | ✓ | | | | +| [`browserTracingIntegration`](./browsertracing) | ✓ | | ✓ | | ✓ | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`httpContextIntegration`](./httpcontext) | ✓ | | | | ✓ | +| [`browserProfilingIntegration`](./browserprofiling) | | | ✓ | | | +| [`contextLinesIntegration`](./contextlines) | | ✓ | | | | +| [`httpClientIntegration`](./httpclient) | | ✓ | | | | +| [`moduleMetadataIntegration`](./modulemetadata) | | | | | ✓ | +| [`replayIntegration`](./replay) | | | | ✓ | ✓ | +| [`replayCanvasIntegration`](./replaycanvas) | | | | ✓ | | +| [`reportingObserverIntegration`](./reportingobserver) | | ✓ | | | | + +### Node.js Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`graphqlIntegration`](./graphql) | ✓ | | ✓ | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`mongoIntegration`](./mongo) | ✓ | | ✓ | | +| [`mongooseIntegration`](./mongoose) | ✓ | | ✓ | | +| [`mysqlIntegration`](./mysql) | ✓ | | ✓ | | +| [`mysql2Integration`](./mysql2) | ✓ | | ✓ | | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`postgresIntegration`](./postgres) | ✓ | | ✓ | | +| [`prismaIntegration`](./prisma) | ✓ | | ✓ | | +| [`redisIntegration`](./redis) | ✓ | | ✓ | | +| [`requestDataIntegration`](./requestdata) | ✓ | | ✓ | | +| [`anrIntegration`](./anr) | | ✓ | | | +| [`localVariablesIntegration`](./localvariables) | | ✓ | | | +| [`nodeProfilingIntegration`](./nodeprofiling) | | | ✓ | | diff --git a/platform-includes/configuration/integrations/javascript.aws-lambda.mdx b/platform-includes/configuration/integrations/javascript.aws-lambda.mdx new file mode 100644 index 0000000000000..0018e8a6e6daf --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.aws-lambda.mdx @@ -0,0 +1,35 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`awsIntegration`](./aws) | ✓ | | ✓ | | +| [`awsLambdaIntegration`](./awslambda) | ✓ | | ✓ | | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`anrIntegration`](./anr) | | ✓ | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`graphqlIntegration`](./graphql) | | | ✓ | | +| [`localVariablesIntegration`](./localvariables) | | ✓ | | | +| [`mongoIntegration`](./mongo) | | | ✓ | | +| [`mongooseIntegration`](./mongoose) | | | ✓ | | +| [`mysqlIntegration`](./mysql) | | | ✓ | | +| [`mysql2Integration`](./mysql2) | | | ✓ | | +| [`nodeProfilingIntegration`](./nodeprofiling) | | | ✓ | | +| [`postgresIntegration`](./postgres) | | | ✓ | | +| [`prismaIntegration`](./prisma) | | | ✓ | | +| [`redisIntegration`](./redis) | | | ✓ | | +| [`requestDataIntegration`](./requestdata) | | | ✓ | | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.bun.mdx b/platform-includes/configuration/integrations/javascript.bun.mdx new file mode 100644 index 0000000000000..34e5f1aafd1f5 --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.bun.mdx @@ -0,0 +1,31 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`bunServerIntegration`](./bunserver) | ✓ | ✓ | ✓ | | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`graphqlIntegration`](./graphql) | ✓ | | ✓ | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`mongoIntegration`](./mongo) | ✓ | | ✓ | | +| [`mongooseIntegration`](./mongoose) | ✓ | | ✓ | | +| [`mysqlIntegration`](./mysql) | ✓ | | ✓ | | +| [`mysql2Integration`](./mysql2) | ✓ | | ✓ | | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`postgresIntegration`](./postgres) | ✓ | | ✓ | | +| [`prismaIntegration`](./prisma) | ✓ | | ✓ | | +| [`redisIntegration`](./redis) | ✓ | | ✓ | | +| [`requestDataIntegration`](./requestdata) | ✓ | | ✓ | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.deno.mdx b/platform-includes/configuration/integrations/javascript.deno.mdx new file mode 100644 index 0000000000000..1d27f0926f579 --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.deno.mdx @@ -0,0 +1,18 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Cron** | **Additional Context** | +| --------------------------------------------------- | :--------------: | :--------: | :-------------: | :------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | | +| [`denoContextIntegration`](./denocontext) | ✓ | | | | ✓ | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | | +| [`denoCronIntegration`](./denocron) | | | | ✓ | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.gatsby.mdx b/platform-includes/configuration/integrations/javascript.gatsby.mdx new file mode 100644 index 0000000000000..b4a9cd803db3c --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.gatsby.mdx @@ -0,0 +1,25 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Replay** | **Additional Context** | +| ----------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`browserApiErrorsIntegration`](./browserapierrors) | ✓ | ✓ | | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`httpContextIntegration`](./httpcontext) | ✓ | | | | ✓ | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | | +| [`browserProfilingIntegration`](./browserprofiling) | | | ✓ | | | +| [`browserTracingIntegration`](./browsertracing) | | | ✓ | | ✓ | +| [`captureConsoleIntegration`](./captureconsole) | | | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | | ✓ | | | | +| [`debugIntegration`](./debug) | | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | | ✓ | +| [`httpClientIntegration`](./httpclient) | | ✓ | | | | +| [`moduleMetadataIntegration`](./modulemetadata) | | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | | +| [`replayIntegration`](./replay) | | | | ✓ | ✓ | +| [`replayCanvasIntegration`](./replaycanvas) | | | | ✓ | | +| [`reportingObserverIntegration`](./reportingobserver) | | ✓ | | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.gcp-functions.mdx b/platform-includes/configuration/integrations/javascript.gcp-functions.mdx new file mode 100644 index 0000000000000..fe3acf9eb3e01 --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.gcp-functions.mdx @@ -0,0 +1,35 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`googleCloudGrpcIntegration`](./googlecloudgrpc) | ✓ | | ✓ | | +| [`googleCloudHttpIntegration`](./googlecloudhttp) | ✓ | | ✓ | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`anrIntegration`](./anr) | | ✓ | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`graphqlIntegration`](./graphql) | | | ✓ | | +| [`localVariablesIntegration`](./localvariables) | | ✓ | | | +| [`mongoIntegration`](./mongo) | | | ✓ | | +| [`mongooseIntegration`](./mongoose) | | | ✓ | | +| [`mysqlIntegration`](./mysql) | | | ✓ | | +| [`mysql2Integration`](./mysql2) | | | ✓ | | +| [`nodeProfilingIntegration`](./nodeprofiling) | | | ✓ | | +| [`postgresIntegration`](./postgres) | | | ✓ | | +| [`prismaIntegration`](./prisma) | | | ✓ | | +| [`redisIntegration`](./redis) | | | ✓ | | +| [`requestDataIntegration`](./requestdata) | | | ✓ | | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.mdx b/platform-includes/configuration/integrations/javascript.mdx new file mode 100644 index 0000000000000..b4a9cd803db3c --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.mdx @@ -0,0 +1,25 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Replay** | **Additional Context** | +| ----------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`browserApiErrorsIntegration`](./browserapierrors) | ✓ | ✓ | | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`httpContextIntegration`](./httpcontext) | ✓ | | | | ✓ | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | | +| [`browserProfilingIntegration`](./browserprofiling) | | | ✓ | | | +| [`browserTracingIntegration`](./browsertracing) | | | ✓ | | ✓ | +| [`captureConsoleIntegration`](./captureconsole) | | | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | | ✓ | | | | +| [`debugIntegration`](./debug) | | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | | ✓ | +| [`httpClientIntegration`](./httpclient) | | ✓ | | | | +| [`moduleMetadataIntegration`](./modulemetadata) | | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | | +| [`replayIntegration`](./replay) | | | | ✓ | ✓ | +| [`replayCanvasIntegration`](./replaycanvas) | | | | ✓ | | +| [`reportingObserverIntegration`](./reportingobserver) | | ✓ | | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.nextjs.mdx b/platform-includes/configuration/integrations/javascript.nextjs.mdx new file mode 100644 index 0000000000000..35d386791267f --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.nextjs.mdx @@ -0,0 +1,75 @@ +Next.js can operate within three runtimes: the Node.js.js runtime, the browser runtime, and the Edge runtime. +However, it's important to note that not all integrations are compatible with all of these runtimes. + +Depending on whether an integration enhances the functionality of a particular runtime, such as the BrowserTracing integration for the browser runtime or the RequestData integration for the Node.js.js runtime, you can only include these integrations in their respective configuration files: + +- For the browser runtime, add integrations to `sentry.client.config.(js|ts)`. +- For Node.js.js, add integrations to your Sentry setup in `instrumentation.(js|ts)`. +- For the Edge runtime, add integrations to your Sentry setup in `instrumentation.(js|ts)`. + +### Common Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | + +### Browser Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Replay** | **Additional Context** | +| ----------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`browserApiErrorsIntegration`](./browserapierrors) | ✓ | ✓ | | | | +| [`browserTracingIntegration`](./browsertracing) | ✓ | | ✓ | | ✓ | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`httpContextIntegration`](./httpcontext) | ✓ | | | | ✓ | +| [`browserProfilingIntegration`](./browserprofiling) | | | ✓ | | | +| [`contextLinesIntegration`](./contextlines) | | ✓ | | | | +| [`httpClientIntegration`](./httpclient) | | ✓ | | | | +| [`moduleMetadataIntegration`](./modulemetadata) | | | | | ✓ | +| [`replayIntegration`](./replay) | | | | ✓ | ✓ | +| [`replayCanvasIntegration`](./replaycanvas) | | | | ✓ | | +| [`reportingObserverIntegration`](./reportingobserver) | | ✓ | | | | + +### Server (Node.js, Edge) Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| ----------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`requestDataIntegration`](./requestdata) | ✓ | | ✓ | | + +### Node.js Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`graphqlIntegration`](./graphql) | ✓ | | ✓ | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`mongoIntegration`](./mongo) | ✓ | | ✓ | | +| [`mongooseIntegration`](./mongoose) | ✓ | | ✓ | | +| [`mysqlIntegration`](./mysql) | ✓ | | ✓ | | +| [`mysql2Integration`](./mysql2) | ✓ | | ✓ | | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`postgresIntegration`](./postgres) | ✓ | | ✓ | | +| [`prismaIntegration`](./prisma) | ✓ | | ✓ | | +| [`redisIntegration`](./redis) | ✓ | | ✓ | | +| [`anrIntegration`](./anr) | | ✓ | | | +| [`localVariablesIntegration`](./localvariables) | | ✓ | | | +| [`nodeProfilingIntegration`](./nodeprofiling) | | | ✓ | | + +### Edge Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`winterCGFetchIntegration`](./wintercgfetch) | ✓ | | ✓ | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.node.mdx b/platform-includes/configuration/integrations/javascript.node.mdx new file mode 100644 index 0000000000000..0e37ed6973729 --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.node.mdx @@ -0,0 +1,33 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`graphqlIntegration`](./graphql) | ✓ | | ✓ | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`mongoIntegration`](./mongo) | ✓ | | ✓ | | +| [`mongooseIntegration`](./mongoose) | ✓ | | ✓ | | +| [`mysqlIntegration`](./mysql) | ✓ | | ✓ | | +| [`mysql2Integration`](./mysql2) | ✓ | | ✓ | | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`postgresIntegration`](./postgres) | ✓ | | ✓ | | +| [`prismaIntegration`](./prisma) | ✓ | | ✓ | | +| [`redisIntegration`](./redis) | ✓ | | ✓ | | +| [`requestDataIntegration`](./requestdata) | ✓ | | ✓ | | +| [`anrIntegration`](./anr) | | ✓ | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`localVariablesIntegration`](./localvariables) | | ✓ | | | +| [`nodeProfilingIntegration`](./nodeprofiling) | | | ✓ | | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | diff --git a/platform-includes/configuration/integrations/javascript.remix.mdx b/platform-includes/configuration/integrations/javascript.remix.mdx new file mode 100644 index 0000000000000..355bec2e90438 --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.remix.mdx @@ -0,0 +1,63 @@ +The Remix SDK initializes the SDK in two runtimes: Browser and Node.js. +However, it's important to note that not all integrations are compatible with all of these runtimes. + +Depending on whether an integration enhances the functionality of a particular runtime, such as the `BrowserTracing` integration for the browser runtime or the `RequestData` integration for the Node.js.js runtime, you can only include these integrations in their respective configuration files: + +- For the browser runtime integrations, add integrations to `Sentry.init` in `entry.client.tsx` +- For the Node.js runtime integrations, add integrations to `Sentry.init` in `entry.server.tsx` + +### Common Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | + +### Browser Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Replay** | **Additional Context** | +| ----------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`browserApiErrorsIntegration`](./browserapierrors) | ✓ | ✓ | | | | +| [`browserTracingIntegration`](./browsertracing) | ✓ | | ✓ | | ✓ | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`httpContextIntegration`](./httpcontext) | ✓ | | | | ✓ | +| [`browserProfilingIntegration`](./browserprofiling) | | | ✓ | | | +| [`contextLinesIntegration`](./contextlines) | | ✓ | | | | +| [`httpClientIntegration`](./httpclient) | | ✓ | | | | +| [`moduleMetadataIntegration`](./modulemetadata) | | | | | ✓ | +| [`replayIntegration`](./replay) | | | | ✓ | ✓ | +| [`replayCanvasIntegration`](./replaycanvas) | | | | ✓ | | +| [`reportingObserverIntegration`](./reportingobserver) | | ✓ | | | | + +### Node.js Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`graphqlIntegration`](./graphql) | ✓ | | ✓ | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`mongoIntegration`](./mongo) | ✓ | | ✓ | | +| [`mongooseIntegration`](./mongoose) | ✓ | | ✓ | | +| [`mysqlIntegration`](./mysql) | ✓ | | ✓ | | +| [`mysql2Integration`](./mysql2) | ✓ | | ✓ | | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`postgresIntegration`](./postgres) | ✓ | | ✓ | | +| [`prismaIntegration`](./prisma) | ✓ | | ✓ | | +| [`redisIntegration`](./redis) | ✓ | | ✓ | | +| [`requestDataIntegration`](./requestdata) | ✓ | | ✓ | | +| [`anrIntegration`](./anr) | | ✓ | | | +| [`localVariablesIntegration`](./localvariables) | | ✓ | | | +| [`nodeProfilingIntegration`](./nodeprofiling) | | | ✓ | | diff --git a/platform-includes/configuration/integrations/javascript.sveltekit.mdx b/platform-includes/configuration/integrations/javascript.sveltekit.mdx new file mode 100644 index 0000000000000..a7e78afec4baa --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.sveltekit.mdx @@ -0,0 +1,63 @@ +The SvelteKit SDK initializes the SDK in two runtimes: Browser and Node.js. +However, it's important to note that not all integrations are compatible with all of these runtimes. + +Depending on whether an integration enhances the functionality of a particular runtime, such as the `BrowserTracing` integration for the browser runtime or the `RequestData` integration for the Node.js.js runtime, you can only include these integrations in their respective configuration files: + +- For the browser runtime integrations, add integrations to `Sentry.init` in `hooks.client.js` +- For the Node.js runtime integrations, add integrations to `Sentry.init` in `hooks.server.js` + +### Common Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | +| [`captureConsoleIntegration`](./captureconsole) | | | | ✓ | +| [`debugIntegration`](./debug) | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | ✓ | + +### Browser Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Replay** | **Additional Context** | +| ----------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`browserApiErrorsIntegration`](./browserapierrors) | ✓ | ✓ | | | | +| [`browserTracingIntegration`](./browsertracing) | ✓ | | ✓ | | ✓ | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`httpContextIntegration`](./httpcontext) | ✓ | | | | ✓ | +| [`browserProfilingIntegration`](./browserprofiling) | | | ✓ | | | +| [`contextLinesIntegration`](./contextlines) | | ✓ | | | | +| [`httpClientIntegration`](./httpclient) | | ✓ | | | | +| [`moduleMetadataIntegration`](./modulemetadata) | | | | | ✓ | +| [`replayIntegration`](./replay) | | | | ✓ | ✓ | +| [`replayCanvasIntegration`](./replaycanvas) | | | | ✓ | | +| [`reportingObserverIntegration`](./reportingobserver) | | ✓ | | | | + +### Node.js Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Additional Context** | +| --------------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------------------: | +| [`consoleIntegration`](./console) | ✓ | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | ✓ | ✓ | | | +| [`httpIntegration`](./http) | ✓ | ✓ | ✓ | ✓ | +| [`graphqlIntegration`](./graphql) | ✓ | | ✓ | | +| [`modulesIntegration`](./modules) | ✓ | | | ✓ | +| [`mongoIntegration`](./mongo) | ✓ | | ✓ | | +| [`mongooseIntegration`](./mongoose) | ✓ | | ✓ | | +| [`mysqlIntegration`](./mysql) | ✓ | | ✓ | | +| [`mysql2Integration`](./mysql2) | ✓ | | ✓ | | +| [`nodeContextIntegration`](./nodecontext) | ✓ | | | ✓ | +| [`nativeNodeFetchIntegration`](./nodefetch) | ✓ | | ✓ | ✓ | +| [`onUncaughtExceptionIntegration`](./onuncaughtexception) | ✓ | ✓ | | | +| [`onUnhandledRejectionIntegration`](./unhandledrejection) | ✓ | ✓ | | | +| [`postgresIntegration`](./postgres) | ✓ | | ✓ | | +| [`prismaIntegration`](./prisma) | ✓ | | ✓ | | +| [`redisIntegration`](./redis) | ✓ | | ✓ | | +| [`requestDataIntegration`](./requestdata) | ✓ | | ✓ | | +| [`anrIntegration`](./anr) | | ✓ | | | +| [`localVariablesIntegration`](./localvariables) | | ✓ | | | +| [`nodeProfilingIntegration`](./nodeprofiling) | | | ✓ | | diff --git a/platform-includes/configuration/integrations/javascript.vue.mdx b/platform-includes/configuration/integrations/javascript.vue.mdx new file mode 100644 index 0000000000000..6f3b4d963ba97 --- /dev/null +++ b/platform-includes/configuration/integrations/javascript.vue.mdx @@ -0,0 +1,26 @@ +### Integrations + +| | **Auto Enabled** | **Errors** | **Performance** | **Replay** | **Additional Context** | +| ----------------------------------------------------- | :--------------: | :--------: | :-------------: | :--------: | :--------------------: | +| [`breadcrumbsIntegration`](./breadcrumbs) | ✓ | | | | ✓ | +| [`browserApiErrorsIntegration`](./browserapierrors) | ✓ | ✓ | | | | +| [`dedupeIntegration`](./dedupe) | ✓ | ✓ | | | | +| [`functionToStringIntegration`](./functiontostring) | ✓ | | | | | +| [`globalHandlersIntegration`](./globalhandlers) | ✓ | ✓ | | | | +| [`httpContextIntegration`](./httpcontext) | ✓ | | | | ✓ | +| [`inboundFiltersIntegration`](./inboundfilters) | ✓ | ✓ | | | | +| [`linkedErrorsIntegration`](./linkederrors) | ✓ | ✓ | | | | +| [`vueIntegration`](./vue) | ✓ | ✓ | ✓ | | | +| [`browserProfilingIntegration`](./browserprofiling) | | | ✓ | | | +| [`browserTracingIntegration`](./browsertracing) | | | ✓ | | ✓ | +| [`captureConsoleIntegration`](./captureconsole) | | | | | ✓ | +| [`contextLinesIntegration`](./contextlines) | | ✓ | | | | +| [`debugIntegration`](./debug) | | | | | | +| [`extraErrorDataIntegration`](./extraerrordata) | | | | | ✓ | +| [`httpClientIntegration`](./httpclient) | | ✓ | | | | +| [`moduleMetadataIntegration`](./modulemetadata) | | | | | ✓ | +| [`rewriteFramesIntegration`](./rewriteframes) | | ✓ | | | | +| [`replayIntegration`](./replay) | | | | ✓ | ✓ | +| [`replayCanvasIntegration`](./replaycanvas) | | | | ✓ | | +| [`reportingObserverIntegration`](./reportingobserver) | | ✓ | | | | +| [`sessionTimingIntegration`](./sessiontiming) | | | | | ✓ | diff --git a/platform-includes/configuration/rewrite-frames/javascript.bun.mdx b/platform-includes/configuration/rewrite-frames/javascript.bun.mdx new file mode 100644 index 0000000000000..cc8e795603039 --- /dev/null +++ b/platform-includes/configuration/rewrite-frames/javascript.bun.mdx @@ -0,0 +1,21 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "@sentry/bun"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.rewriteFramesIntegration( + { + // root path that will be stripped from the current frame's filename by the default iteratee if the filename is an absolute path + root: string; + + // a custom prefix that will be used by the default iteratee (default: `app://`) + prefix: string; + + // function that takes the frame, applies a transformation, and returns it + iteratee: (frame) => frame; + } + )], +}); +``` diff --git a/platform-includes/configuration/rewrite-frames/javascript.deno.mdx b/platform-includes/configuration/rewrite-frames/javascript.deno.mdx new file mode 100644 index 0000000000000..e961b8face7c4 --- /dev/null +++ b/platform-includes/configuration/rewrite-frames/javascript.deno.mdx @@ -0,0 +1,21 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "https://deno.land/x/sentry/index.mjs"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.rewriteFramesIntegration( + { + // root path that will be stripped from the current frame's filename by the default iteratee if the filename is an absolute path + root: string; + + // a custom prefix that will be used by the default iteratee (default: `app://`) + prefix: string; + + // function that takes the frame, applies a transformation, and returns it + iteratee: (frame) => frame; + } + )], +}); +``` diff --git a/platform-includes/configuration/sessiontiming/javascript.bun.mdx b/platform-includes/configuration/sessiontiming/javascript.bun.mdx new file mode 100644 index 0000000000000..9c734574b6ac2 --- /dev/null +++ b/platform-includes/configuration/sessiontiming/javascript.bun.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "@sentry/bun"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.sessionTimingIntegration()], +}); +``` diff --git a/platform-includes/configuration/sessiontiming/javascript.deno.mdx b/platform-includes/configuration/sessiontiming/javascript.deno.mdx new file mode 100644 index 0000000000000..f11532b9343da --- /dev/null +++ b/platform-includes/configuration/sessiontiming/javascript.deno.mdx @@ -0,0 +1,10 @@ + + +```javascript {tabTitle: JavaScript} +import * as Sentry from "https://deno.land/x/sentry/index.mjs"; + +Sentry.init({ + dsn: "___PUBLIC_DSN___", + integrations: [Sentry.sessionTimingIntegration()], +}); +```