SharePoint Health Analyzer の概要
最終更新日: 2010年1月5日
適用対象: SharePoint Foundation 2010
Microsoft SharePoint Foundation 2010 の機能である SharePoint Health Analyzer を使用すると、サーバー ファームでの構成、パフォーマンス、使用状況についての潜在的な問題を定期的に自動チェックするスケジュールを設定できます。SharePoint Health Analyzer が検出したエラーは状態レポートで示され、ファーム管理者はそれをサーバーの全体管理で見ることができます。状態レポートでは、各問題が説明され、問題が存在するサーバーが示され、問題の改善に使用できる手順の概要が示されています。状況によっては、検出されたエラーは直ちに自動的に修復され、ファーム管理者には修復の通知があります。
正常性ルール
SharePoint Health Analyzer は、一連の正常性ルールを適用することでファームを監視します。SharePoint Foundation ではいくつかのルールがあらかじめ設定されています。ユーザーは、SharePoint Foundation オブジェクト モデルを使用するコードを記述することで、追加のルールを作成して展開できます。
正常性ルールは実行可能なコードです。各ルールは具象サブクラスで、2 つの抽象クラス SPHealthAnalysisRule と SPRepairableHealthAnalysisRule のどちらかを継承します。どちらの場合も、潜在的な問題を検出してレポートするコードは、Check() メソッドに含まれます。修復可能な正常性ルールには、Check メソッドによって発見された問題を修正する Repair() メソッドもあります。
ルールはコンパイル済みのアセンブリで展開され、SPHealthAnalyzer クラスの RegisterRules(Assembly) メソッドを呼び出すことで SharePoint Health Analyzer に登録されます。ルールが登録されると、ルールの AutomaticExecutionParameters プロパティで指定されている既定のパラメーターを使用して、ルールを実行するためのタイマー ジョブが作成されます。さらに、ルールのアイテムが [Health Analyzer ルール] リストに追加されます。ルールの定義は、サーバーの全体管理の [監視] セクションで [Health Analyzer] の [ルール定義の確認] をクリックすることで確認できます。
ファーム管理者は、[Health Analyzer ルール] リストを使用して、ルールの設定を編集したり、ルールを実行する場所や時を変更したり、ルール全体を無効にしたりできます。ルールがエラーを自動的に修復するように設計されている場合は、ルールのエラー チェック機能を無効にすることなく自動修復機能だけを無効にできます。
[Health Analyzer ルール] リストには、SPList のサブクラスである SPHealthRulesList クラスの静的プロパティ Local を使用してプログラムからアクセスできます。SPHealthRulesList クラスのインスタンスを取得した後は、他の SPList オブジェクトの場合と同じようにリストをクエリできます。
重要 |
---|
Local プロパティから返される SPHealthRulesList オブジェクトでは、アンマネージ リソースが使用されます。このリソースは明示的に解放する必要があります。これを行う方法の 1 つは、オブジェクトが不要になった時点で、Dispose() メソッドを呼び出すことです。 |
正常性レポート
正常性ルールが実行すると、SharePoint Health Analyzer は状態レポートを作成し、サーバーの全体管理の [監視] セクションの [Health Analyzer レポート] リストに追加します。このリストの既定のビューには、最新の正常性チェックで失敗したアイテムのみが表示されます。サーバーの全体管理の [監視] セクションで [Health Analyzer] の [問題とソリューションの確認] をクリックすることで、アーカイブされているレポートを確認できます。
正常性レポート リストには、SPList のサブクラスである SPHealthReportsList クラスの静的プロパティ Local を使用してプログラムからアクセスできます。SPHealthReportsList クラスのインスタンスを取得した後は、他の SPList オブジェクトの場合と同じようにリストをクエリできます。たとえば、Local プロパティを参照してください。
重要 |
---|
Local プロパティから返される SPHealthReportsList オブジェクトでは、アンマネージ リソースが使用されます。このリソースは明示的に解放する必要があります。これを行う方法の 1 つは、オブジェクトが不要になった時点で、Dispose() メソッドを呼び出すことです。 |