Sentry 是监控应用程序中的错误和性能的重要工具。除了允许性能跟踪和代码分析之外,它还会自动捕获和报告异常。在本文中,我们将探讨如何在 NestJS 项目中配置和使用 Sentry。
1。安装哨兵
首先,您需要向您的 NestJS 项目添加必要的依赖项。运行以下命令:
npm install @sentry/nestjs @sentry/profiling-node
2。配置哨兵
安装依赖项后,在您的项目中配置 Sentry。创建 Sentry 设置文件,例如sentry.config.ts,并添加以下代码:
import * as Sentry from '@sentry/nestjs'; import { nodeProfilingIntegration } from '@sentry/profiling-node'; Sentry.init({ dsn: process.env.SENTRY_DSN, // Adicione sua DSN do Sentry aqui integrations: [nodeProfilingIntegration()], tracesSampleRate: 1.0, // Captura 100% das transações para monitoramento de performance profilesSampleRate: 1.0, // Define a taxa de amostragem para profiling de código });
*3。将 Sentry 集成到应用程序启动中
*
现在,您需要将 Sentry 集成到您的应用程序启动中。在主启动文件(main.ts)中,配置Sentry以捕获并报告异常,如下所示:
import '../src/config/sentry'; // Importa a configuração do Sentry import { BaseExceptionFilter, HttpAdapterHost, NestFactory, } from '@nestjs/core'; import { AppModule } from './app.module'; import * as Sentry from '@sentry/nestjs'; async function bootstrap() { const app = await NestFactory.create(AppModule, { rawBody: true }); // Configurando o Sentry para capturar e relatar exceções const { httpAdapter } = app.get(HttpAdapterHost); Sentry.setupNestErrorHandler(app, new BaseExceptionFilter(httpAdapter)); await app.listen(3000); } bootstrap();
结论
通过这些设置,Sentry 现在已集成到您的 NestJS 项目中,用于监视错误、异常和应用程序性能。这对于快速识别和解决问题、确保更稳定和可预测的用户体验至关重要。
请记住根据环境和应用程序重要性调整采样率,以避免不必要的开销。
以上是如何在 NestJS 项目中实现 Sentry的详细内容。更多信息请关注PHP中文网其他相关文章!