SharePoint Server で診断ログを構成する

適用対象:yes-img-13 2013yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

前提条件

サーバーの全体管理 からこの操作を実行するユーザー アカウントは、ファームの管理者 SharePoint グループのメンバーである必要があります。

診断ログ設定のベスト プラクティス

SharePoint Server 環境では、最初の展開またはアップグレードの後や、環境に何らかの変更があった場合に (サーバーの追加/削除など)、診断ログ設定の構成が必要になることがあります。 具体的な環境に合わせたベスト プラクティスの形成には、以下のガイドラインが参考になります。

  • サーバーがログを書き込むドライブを変更します。

    既定では、SharePoint Server のインストール先と同じドライブとパーティションに診断ログが書き込まれるように構成されています。 診断ログは大量のディスク領域を使用する場合があり、ログの書き込みはドライブのパフォーマンスに影響を及ぼす可能性があります。 したがって、SharePoint Server は、SharePoint Server のインストール先とは別のドライブに書き込まれるように構成することをお勧めします。 また、SharePoint Server がログを書き込むドライブへの接続速度を検討する必要もあります。 詳細レベルのログ出力が構成されている場合は、サーバーは大量のデータを記録するので、接続速度が遅いとログのパフォーマンスが低下する可能性があります。

  • ログによるディスク領域の使用を制限します。

    既定では、診断ログで使用できるディスク領域の量が制限されていません。 したがって、特に詳細レベルのイベントを書き込むようにログを構成している場合は、ログで使用するディスク領域を制限してください。 ディスクの使用量がこの制限に達すると、SharePoint Server は一番古いログを削除してから、新しいログ データを記録します。

  • 詳細設定の使用は控えめにします。

    診断ログは、詳細レベルのイベントを記録するように構成できます。 このように構成すると、SharePoint Server は自身が行うすべての処理を記録しますが、詳細レベルのログは急速にドライブの領域を使用し、これがドライブやサーバーのパフォーマンスに影響を与える場合があります。 詳細レベルのログは、重要な変更を行う場合に、より詳細な情報を記録するときに使用します。 変更が完了したら、概要レベルのイベントのみが記録されるようにログを再構成します。

  • 定期的にログをバックアップします。

    診断ログには重要なデータが含まれます。 したがって、定期的にログをバックアップし、このデータが失われないようにします。 ログ ドライブの領域の使用を制限するか、数日間しかログを保持しない場合、しきい値に達すると、SharePoint Server は、一番古いものから順番にログ ファイルを自動的に削除していきます。

  • イベント ログのオーバーフロー防止機能を有効にします。

    この設定を有効にすると、Windows イベント ログに繰り返し出現するイベントが SharePoint Server によって検出されます。ログに繰り返し記録されるイベントが検出されると、通常の状態に戻るまでそのイベントは抑制されます。

イベント ログとトレース ログの診断ログのレベルは設定できます。 これにより、各ログに書き込まれる情報の種類と量が制限されます。 次の表は、イベント ログとトレース ログで設定できるレベルを示しています。

イベント ログのレベル

レベル 定義
なし
ログを記録しません。
重大
このメッセージの種類は、ソリューションに重い障害を引き起こす重大なエラーが発生したことを意味します。
エラー
このメッセージの種類は、緊急事態が発生したことを意味します。 すべてのエラー イベントを調査する必要があります。
警告
このメッセージの種類は、潜在的な問題や留意すべき問題が存在することを意味します。 警告メッセージは継続的に調査して、問題のパターンを把握する必要があります。
情報
情報メッセージについては、特に対処は必要ありません。 このメッセージにより、ソリューションの状態を監視する際に役立つデータを入手できます。
詳細
このイベント ログ レベルでは、イベントまたはメッセージが詳細に記録されます。

トレース ログのレベル

レベル 定義
なし
トレース ログは記録されません。
原因不明
ソリューションの処理を停止させるようなイベントに関するメッセージが記録されます。 このレベルが設定されたログには、原因不明、例外、アサート、およびクリティカル レベルのイベントが含まれます。
モニター可能
ソリューションの機能性を制限するが、アプリケーションの停止には至らないような、修復不可能なすべてのイベントに関するメッセージが記録されます。 また、このレベルが設定されたログには、"原因不明" 設定によって記録されたすべてのイベントが含まれます。

原因不明であるが、ソリューションの処理を停止させないようなすべてのイベントが記録されます。 また、このレベルが設定されたログには、"モニター可能" 設定によって記録されたすべてのイベントが含まれます。

このレベルに設定すると、トレース ログには Verbose メッセージと VerboseEx メッセージを除くすべてのメッセージが含まれます。 このレベルでは、実行された操作に関するすべての概要情報が記録されます。 このレベルでは、データ フローと一連の操作を構築するのに十分な詳細が提供されます。 管理者またはサポートプロフェッショナルは、このレベルのログ記録を使用して問題のトラブルシューティングを行うことができます。 このレベルに設定すると、ログには、[高] 設定で記録されるすべてのイベントも含まれます。
詳細
このレベルが設定したトレース ログにはほとんどの操作が含まれます。 詳細トレースでは大量のログ メッセージが生成されます。 このレベルは、通常、開発環境においてデバッグの目的でのみ使われます。 また、このレベルが設定されたログには、"中" 設定によって記録されたすべてのイベントが含まれます。
VerboseEx
このレベルは Set-SPLogLevel PowerShell コマンドレットでのみサポートされ、非常に低レベルの診断データが含まれています。 このレベルは開発環境でのみ使用する必要があります。 このレベルに設定すると、詳細設定で記録されるすべてのイベントがログに含まれます。

サーバーの全体管理を使用して診断ログを構成する

SharePoint サーバーの全体管理 Web サイトを使用して、診断ログを構成できます。

サーバーの全体管理を使用して診断ログを構成するには

  1. サーバーの全体管理のホーム ページで、[ 監視] をクリックします。

  2. [監視] ページの [ レポート] セクションで、[ 診断ログの構成] をクリックします。

  3. [診断ログ] ページの [ 記録されるイベントの設定] セクションで、次のように記録されるイベントを構成します。

    すべてのカテゴリについて記録されるイベントを構成するには:

  4. [ すべてのカテゴリ] チェック ボックスをオンにします。

  5. [ イベント ログの記録対象となる重要度の最も低いイベント] の一覧で、イベント ログのレベルを選択します。

  6. [ トレース ログの記録対象となる重要度の最も低いイベント] の一覧で、トレース ログのレベルを選択します。

    特定のカテゴリについて記録されるイベントを構成するには:

  7. 対象のカテゴリのチェック ボックスをオンにします。

  8. [ イベント ログの記録対象となる重要度の最も低いイベント] の一覧で、イベント ログのレベルを選択します。

  9. [ トレース ログの記録対象となる重要度の最も低いイベント] の一覧で、トレース ログのレベルを選択します。

    特定のサブカテゴリについて記録されるイベントを構成するには (カテゴリを展開し、任意のサブカテゴリを選択できます):

  10. カテゴリの横にあるプラス記号 [ (+)] をクリックして、カテゴリを展開します。

  11. サブカテゴリのチェック ボックスをオンにします。

  12. [ イベント ログの記録対象となる重要度の最も低いイベント] の一覧で、イベント ログのレベルを選択します。

  13. [ トレース ログの記録対象となる重要度の最も低いイベント] の一覧で、トレース ログのレベルを選択します。

    すべてのカテゴリについて記録されるイベントを既定の設定に戻すには:

  14. [ すべてのカテゴリ] チェック ボックスをオンにします。

  15. [ イベント ログの記録対象となる重要度の最も低いイベント] ボックスの一覧から [ 既定に戻す] を選択します。

  16. [ トレース ログの記録対象となる重要度の最も低いイベント] ボックスの一覧から [ 既定に戻す] を選択します。

  17. [ イベント ログのオーバーフロー防止] セクションで、[ イベント ログのオーバーフロー防止機能を有効にする] チェック ボックスをオンにします。

  18. [ トレース ログ] セクションの [ パス] ボックスに、ログを書き込むフォルダーのパスを入力します。

  19. [ ログ ファイルの保存日数] ボックスに、ログを保持する日数 (1 ~ 366) を入力します。 この期間が過ぎると、ログは自動的に削除されます。

  20. ログが使用できるディスク領域を制限するには、[ トレース ログのディスク領域の使用を制限する] チェック ボックスをオンにし、ログ ファイルの制限値をギガバイト (GB) 単位で入力します。 ログがこの値に達すると、古いログが自動的に削除されます。

  21. [診断ログ] ページで必要な変更を行った後、[ OK] をクリックします。

PowerShell を使用して診断ログを構成する

PowerShell を使用して、診断ログを構成できます。

PowerShell を使用して診断ログを構成するには

  1. 次のメンバーシップがあることを確認します。

    • SQL Server インスタンスにおける securityadmin 固定サーバー ロール。

    • 更新するすべてのデータベースに対する db_owner 固定データベース ロール。

    • PowerShell コマンドレットを実行するサーバーでの Administrators グループ。

    管理者は Add-SPShellAdmin コマンドレットを使用して、PowerShell のコマンドレットを使用する権限を付与できます。

    注:

    アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に連絡してアクセス許可を要求してください。 PowerShell アクセス許可の詳細については、「Add-SPShellAdmin」を参照してください。

  2. SharePoint 管理シェルから、サーバーがログを書き込むドライブを変更します。

  3. PowerShell コマンド プロンプトで、次のコマンドを入力します。

    Set-SPDiagnosticConfig -LogLocation D:\DiagnosticLogs
    
  4. ログによるディスク領域の使用を制限するには、PowerShell のコマンド プロンプトで、次のコマンドを入力します。

    Set-SPDiagnosticConfig -LogMaxDiskSpaceUsageEnabled
    

または、ログの最大ディスク領域を割り当てます。

Set-SPDiagnosticConfig -LogDiskSpaceUsageGB 500
  1. 現在のログ レベルを表示するには、PowerShell のコマンド プロンプトで、次のコマンドを入力します。

    Get-SPLogLevel
    
  2. ログ レベルを変更するには、PowerShell のコマンド プロンプトで、次のコマンドを入力します。

    Set-SPLogLevel -TraceSeverity Monitorable
    

すべてのカテゴリの設定を既定のレベルに戻すには、PowerShell のコマンド プロンプトで次のコマンドを入力し、Enter キーを押します。

Clear-SPLogLevel
  1. イベント ログのオーバーフロー防止機能を有効にするには、PowerShell のコマンド プロンプトで、次のコマンドを入力します。

    Set-SPDiagnosticConfig -EventLogFloodProtectionEnabled
    

詳細については、「Set-SPDiagnosticConfig」、「Set-SPLogLevel」、「Get-SPLogLevel」を参照してください。

関連項目

概念

SharePoint Server 2016 での監視の概要