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中文網其他相關文章!