¿Qué hace sentry-node-sdk?
Configuración completa del SDK de Sentry para Node.js, Bun y Deno. Útil cuando se te pida "agregar Sentry a Node.js", "agregar Sentry a Bun", "agregar Sentry a Deno", "instalar @sentry/node", "@sentry/bun" o "@sentry/deno", o configurar monitoreo de errores, trazado, registro, perfilado, métricas, cron jobs o monitoreo de IA para entornos de ejecución JavaScript/TypeScript del lado del servidor.
Instalación
Node.js
npm install @sentry/node
# o
pnpm add @sentry/node
# o
yarn add @sentry/node
Bun
bun add @sentry/bun
Deno
deno add @sentry/deno
Configuración básica
Node.js
import * as Sentry from "@sentry/node";
Sentry.init({
dsn: "__DSN__",
tracesSampleRate: 1.0, // Ajusta según necesidades de rendimiento
});
Bun
import * as Sentry from "@sentry/bun";
Sentry.init({
dsn: "__DSN__",
tracesSampleRate: 1.0,
});
Deno
import * as Sentry from "@sentry/deno";
Sentry.init({
dsn: "__DSN__",
tracesSampleRate: 1.0,
});
Características principales
- Monitoreo de errores: Captura y reporta excepciones no capturadas y rechazos de promesas.
- Trazado distribuido: Rastrea solicitudes entre servicios con
tracesSampleRate. - Registro estructurado: Envía logs con contexto y niveles de severidad.
- Perfilado de rendimiento: Identifica cuellos de botella con profiling de transacciones.
- Métricas personalizadas: Define y envía métricas de negocio.
- Cron jobs: Monitorea tareas programadas y detecta fallos.
- Monitoreo de IA: Observa modelos de lenguaje y pipelines de IA.
Uso avanzado
Configuración de entorno
Sentry.init({
dsn: process.env.SENTRY_DSN,
environment: process.env.NODE_ENV || "development",
release: "v1.0.0",
});
Captura manual de errores
try {
// código que puede fallar
} catch (error) {
Sentry.captureException(error);
}
Integración con frameworks
- Express: usar
Sentry.setupExpressErrorHandler(app). - Fastify: usar
Sentry.setupFastifyErrorHandler(app). - Koa: usar
Sentry.setupKoaErrorHandler(app).
Documentación adicional
Para más detalles, consulta la documentación oficial de Sentry.