例外ハンドラーを使用して重大な例外を定義する
例外ハンドラーは、アプリケーションがスローする例外を "キャッチ" してエラーを報告し、いくつかのエラー処理を実行するアプリケーション関数です。 既定では、.NET アプリケーション パフォーマンス モニターは、重大な例外を、.NET Framework が提供する特定の例外ハンドラーが処理する例外として定義しています。 これらのハンドラーは、最上位の ASP.NET 例外と、監視対象アプリケーションが内部的にキャッチして処理できなかった Web サービスの例外をキャッチします。 例外ハンドラーを追加することで、重要な例外の定義をアプリケーション監視の定義に追加します。 結果として、これらの関数により処理される例外は重大な例外としてみなされます。 これを行う利点は、重要な例外の効率的なレポートの利点のみを維持するが、関心のあるレポート機能の追加の利点があるということです。 Web アプリケーションに対して定義されている顧客エラー ハンドラーを重要な例外ハンドラーの一覧に追加して、ユーザーが Web アプリケーションのエラー ハンドラー ページに送信されたときにアラートを受け取ることができるようにするのが一般的です。
警告
例外ハンドラーはプロセス レベルで設定されます。 プロセスで実行されているアプリケーションに対して例外ハンドラーを有効にし、そのプロセスで実行されている別のアプリケーションに対して例外ハンドラーを無効にすると、構成の競合が発生し、アプリケーションの監視が無効になります。 これを解決するには、同じプロセス内のすべてのアプリケーションで例外処理を同じにする必要があります。
既定の例外ハンドラー
例外ハンドラーの既定の一覧には、次のものが含まれます。
- Web.HttpApplication.RecordError
- Web.UI.Page.HandleError
- Web.Services.Protocols.WebServiceHandler.WriteException
- AppDomain.OnUnhandledExceptionEvent
- Windows.Forms.Application.ThreadContext.OnThreadException
- AppDomain.OnUnhandledExceptionEvent
- Runtime.Remoting.Messaging.ReturnMessage..ctor
- Windows.Forms.DataGridView.OnDataError
例外ハンドラーを追加する
例外ハンドラーを追加するには、次の手順に従います。
.NET アプリケーション パフォーマンス モニター テンプレートを開くには、Operations Manager コンソールのナビゲーション ウィンドウで、Authoring ボタンを選択し、Management Pack Templates を選択し、.NET Application パフォーマンス モニター ing を選択します。
変更するアプリケーション グループを右クリックして、[プロパティ] を選びます。
[ Server-Side Defaults タブで、[Advanced Settings を選択。
[ Advanced 設定 ページで、 Critical Exceptions を選択して、 Exception ハンドラーの一覧 ページを開きます。 ここで例外ハンドラーを追加できます。
例外ハンドラーを追加するには、 Add を選択し、例外ハンドラーの一覧に追加するメソッドを入力します。 この例外ハンドラーが監視に影響を与える場合は、 有効な監視 チェック ボックスがオンになっていることを確認します。 [OK] を選択します。
重要
重大な例外として mscorlib の一部として .NET Framework で定義されているハンドラーを追加しても、影響はありません。
Note
メソッド名は、大文字と小文字が区別され、次の形式で指定する必要があります: Namespace.ClassName.MethodName
例外ハンドラーを編集する
例外ハンドラーを編集するには、次の手順に従います。
.NET アプリケーション パフォーマンス モニター テンプレートを開きます。 Operations Manager コンソールのナビゲーション ウィンドウで、Authoring ボタンを選択し、Management Pack Templates を選択し、.NET Application パフォーマンス モニター ing を選択します。
変更するアプリケーション グループを右クリックして、[プロパティ] を選びます。
[サーバー側の既定値] タブで、[ Advanced Settings を選択します。
[Advanced 設定ページで、[クリティカルな例外選択します。 これにより [例外ハンドラーの一覧] ページが開き、例外ハンドラーを編集できます。
例外ハンドラーを編集するには、 Edit を選択し、変更する例外ハンドラーを選択して変更します。 [OK] を選択します。
Note
メソッド名では、大文字と小文字が区別されます。 さらに、メソッド名は、次の形式で指定する必要があります: Namespace.ClassName.MethodName
例外ハンドラーを削除する
例外ハンドラーを削除するには、次の手順に従います。
- .NET アプリケーション パフォーマンス モニター テンプレートを開きます。 Operations Manager コンソールのナビゲーション ウィンドウで、Authoring ボタンを選択し、Management Pack Templates を選択し、.NET Application パフォーマンス モニター ing を選択します。
- 変更するアプリケーション グループを右クリックして、[プロパティ] を選びます。
- [サーバー側の既定値] タブで、[ Advanced Settings を選択します。
- [Advanced 設定ページで、[クリティカルな例外選択します。 これにより [例外ハンドラーの一覧] ページが開き、例外ハンドラーを削除できます。
- 例外ハンドラーを削除するには、削除する例外ハンドラーを選択し、 Remove を選択して、 OK を選択します。