ホームページ > ウェブフロントエンド > jsチュートリアル > NestJS プロジェクトに Sentry を実装する方法

NestJS プロジェクトに Sentry を実装する方法

WBOY
リリース: 2024-09-05 06:30:50
オリジナル
300 人が閲覧しました

Como Implementar o Sentry em um Projeto NestJS

Sentry は、アプリケーションのエラーとパフォーマンスを監視するために不可欠なツールです。パフォーマンスの追跡とコード プロファイリングを可能にするだけでなく、例外を自動的にキャプチャして報告します。この記事では、NestJS プロジェクトで Sentry を構成して使用する方法を説明します。

1. Sentry

をインストールしています

まず、必要な依存関係を NestJS プロジェクトに追加する必要があります。次のコマンドを実行します:

npm install @sentry/nestjs @sentry/profiling-node

2. Sentry を構成しています

依存関係をインストールした後、プロジェクトで 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 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート