4

.NET および IIS 7.5 で実行されている SaaS アプリケーションがあります。サーバーの平均応答時間を監視し、それが特定のしきい値を超えた場合にアラートを送信したいと考えています。これを行うエレガントな方法は何ですか?

すでにいくつかの方法を考えましたが、これらのトラックを開始する前に、他の人の意見を聞きたかったのです。

  1. ある種のサーバー ログ パーサー。最も明白なようですが、探しているメトリックを抽出するのは少し難しいかもしれません。

  2. NuGet .NET HTTP モジュール。応答時間の監視とアラートを実装する NuGet パッケージはありますか? 見つかりませんでした。

  3. カスタム .NET HTTP モジュール。ページのレンダリング時間を監視し、しきい値を超えた場合はメールを送信します。これはおそらく最も柔軟なソリューションですが、実装作業が必要です。

  4. パフォーマンス カウンター。これにはパフォーマンス カウンターが必要なようですが、パフォーマンス モニターを使用したことがありません。特に、起動するたびにすべてのメトリックを追加し直すのは好きではありません。また、Performance Monitor に自動的にメールを送信させることもできません。

私が考えていない他の人はいますか?実装と維持が最も簡単だと思われるアプローチはどれですか? これを自分で試しましたか?

4

1 に答える 1

0

私は#2で行きます。HTTPモジュールを使用して、リクエストの開始と終了を保存し、データベースに保存できます。

次に、X 分ごとにデータベースを読み取り、データを平均してレポートを送信する別のジョブを作成します。データベースにデータが入ったので、楽しみながらあらゆる種類のレポートを作成できます (1 日の忙しい時間帯、最も長く実行されているリクエスト、最も集中的なリクエストを持っているクライアントなど)。

IMHOこれは、より正確なデータを提供し、毎回設定する必要がないため、パフォーマンスカウンターよりも優れています。

于 2013-04-05T08:42:07.877 に答える