SharePoint Server で診断ログを表示するView diagnostic logs in SharePoint Server

適用対象: yes 2013  yes 2016  yes 2019  Microsoft 365 の SharePoint なしAPPLIES TO: yes2013 yes2016 yes2019 noSharePoint in Microsoft 365

SharePoint Server の統合ログ サービス (ULS) ログのデータを使用すると、ファーム内で発生する問題のトラブルシューティングを行えます。ULS ログでは、ログ設定に応じて、さまざまなレベルのデータを収集できます。PowerShell を使用して、データをフィルター処理し、それをさまざまな方法で表示したり、そのデータをデータ グリッドに出力したりします。データ グリッドを使用すると、データのフィルター処理、並べ替え、グループ化、および Excel 2016 へのエクスポートができます。You can troubleshoot problems in the farm by using data from the Unified Logging Service (ULS) logs in SharePoint Server . The ULS logs can collect data at varying levels depending on the logging settings. Use PowerShell to filter the data, display it in various ways, and output the data to a data grid with which you can filter, sort, group, and export data to Excel 2016.

PowerShell を使用してログイベントの表示とフィルター処理を行うView and filter log events by using PowerShell

PowerShell を使用すると、ログ イベントの表示とフィルター処理を行えます。SharePoint サーバーの全体管理 Web サイトでは、ログ イベントの表示やフィルター処理は行えません。You can use PowerShell to view and filter log events. You cannot view or filter log events by using the SharePoint Central Administration website.

PowerShell を使用してログイベントの表示とフィルター処理を行うにはTo view and filter log events by using PowerShell

  1. 次のメンバーシップがあることを確認します。Verify that you have the following memberships:
  • SQL Server インスタンスにおける securityadmin 固定サーバー ロール。securityadmin fixed server role on the SQL Server instance.

  • 更新するすべてのデータベースに対する db_owner 固定データベース ロール。db_owner fixed database role on all databases that are to be updated.

  • PowerShell コマンドレットを実行するサーバーでの Administrators グループ。Administrators group on the server on which you are running the PowerShell cmdlets.

    管理者は Add-SPShellAdmin コマンドレットを使用して、権限を付与できます。An administrator can use the Add-SPShellAdmin cmdlet to grant permissions.

    注意

    アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に連絡してアクセス許可を要求してください。PowerShell アクセス許可の詳細については、「Add-SPShellAdmin」を参照してください。If you do not have permissions, contact your Setup administrator or SQL Server administrator to request permissions. For additional information about PowerShell permissions, see Add-SPShellAdmin.

  1. SharePoint 管理シェルに移動します。Go to the SharePoint Management Shell.

  2. PowerShell コマンド プロンプトで、次のコマンドを入力します。At the PowerShell command prompt, type the following command:

  • すべてのトレース イベント:All trace events:
Get-SPLogEvent
  • レベル別:By level:
Get-SPLogEvent | Where-Object {$_.Level -eq "Information" }
  • エリア別:By area:
Get-SPLogEvent | Where-Object {$_.Area -eq <Area>}
<span data-ttu-id="e3d62-124">_\<Area\>_ には、 **Area**プロパティの値を指定します。</span><span class="sxs-lookup"><span data-stu-id="e3d62-124">Where  _\<Area\>_ is the value of the **Area** property.</span></span> 
  • カテゴリ別:By category:
Get-SPLogEvent | Where-Object {$_.Category -eq <Category>
<span data-ttu-id="e3d62-126">_\<Category\>_ には**Category**プロパティの値を指定します。</span><span class="sxs-lookup"><span data-stu-id="e3d62-126">Where  _\<Category\>_ is the value of the **Category** property.</span></span> 
  • イベント ID 別:By event ID:
Get-SPLogEvent | Where-Object {$_.EventID -eq <EventID>}
<span data-ttu-id="e3d62-128">_\<EventID\>_ には、 **EventID**プロパティの値を指定します。</span><span class="sxs-lookup"><span data-stu-id="e3d62-128">Where  _\<EventID\>_ is the value of the **EventID** property.</span></span> 
  • メッセージ テキスト別:By message text:
Get-SPLogEvent | Where-Object {$_.Message -like "<string>"}
<span data-ttu-id="e3d62-130">ここ  _\<string\>_ で、はイベントメッセージ内で見つかった文字列です。</span><span class="sxs-lookup"><span data-stu-id="e3d62-130">Where  _\<string\>_ is the string found in the event message.</span></span> 
  • プロセス別:By process:
Get-SPLogEvent | Where-Object {$_.Process -like "<Process>"}
<span data-ttu-id="e3d62-132">_\<Process\>_ には、 **Process**プロパティの値を指定します。</span><span class="sxs-lookup"><span data-stu-id="e3d62-132">Where  _\<Process\>_ is the value of the **Process** property.</span></span> 

<span data-ttu-id="e3d62-p104">既定では、このコマンドは既定の ULS ログ フォルダーからデータを取得します。ネットワーク上の共有フォルダーにあるトレース イベントの表示とフィルター処理を行うには、 **Get-SPLogEvent** コマンドレットの **Directory** パラメーターを使用してください。</span><span class="sxs-lookup"><span data-stu-id="e3d62-p104">By default, the command retrieves data from the default ULS log folder. To view and filter trace events that are on shared folder on a network, use the **Directory** parameter of the **Get-SPLogEvent** cmdlet.</span></span> 

<span data-ttu-id="e3d62-p105">各トレース イベントの詳細を表示するには、コマンドの末尾に **Format-List** を使用します。たとえば、次のように使用します。</span><span class="sxs-lookup"><span data-stu-id="e3d62-p105">To view more details about each trace event, use the **Format-List** cmdlet at the end of the command. For example,</span></span> 
Get-SPLogEvent | Where-Object {$_.Area -eq "SharePoint Foundation"} | Format-List

詳細については、「Get-SPLogEvent」を参照してください。For more information, see Get-SPLogEvent.

PowerShell Out-GridView コマンドレットを使用して診断ログを表示およびエクスポートするView and export diagnostic logs by using the PowerShell Out-GridView cmdlet

PowerShell は強力で使いやすい機能を提供します。これにより、PowerShell コマンドの結果として、表形式のデータが、フィルター可能で検索可能なデータグリッドの別のウィンドウに表示されます。PowerShell provides a powerful and easy-to-use feature that displays tabular data resulting from PowerShell commands in a filterable, searchable data grid in a separate window. このグリッドを使用して、ログ イベントを表示したり、データに対して次の操作を行ったりできます。You can use this grid to view log events and to perform the following operations on the data:

  • データを任意の列で並べ替える。Sort the data by any column.

  • データをグループごとに表示する。View the data in groups.

  • データをレベル、エリア、カテゴリ、メッセージ、イベント ID、またはタイムスタンプでフィルター処理する。Filter the data by Level, Area, Category, Message, Event ID, or Timestamp.

  • データから文字列を検索する。Search the data for any string.

  • 未加工のデータ、並べ替え後のデータ、またはフィルター処理後のデータをスプレッドシートにエクスポートする。Export raw or sorted or filtered data to a spreadsheet.

注意

Out-GridView コマンドレットは、 Format 動詞を使用するコマンドレットと併用できません。 Out-GridView コマンドレットはオブジェクトを受け取りますが、 Format 動詞を使用するコマンドレットは書式付きテキストのみを返します。 > 結果をフィルター処理して Out-GridView コマンドレットに送る Where-Object コマンドレットを使用して、データの一部を表示できます。たとえば、 Get-SPLogEvent | Where-Object {$_.Area -eq "SharePoint Foundation"} | Out-GridView のようになります。 > グリッドに何百行も表示される場合は、処理に時間がかかることもあります。複雑なフィルター処理を行う場合は特にそうです。パフォーマンスを高めるには、データを Excel 2016 にエクスポートしてください。The Out-GridView cmdlet cannot be used with cmdlets that use the Format verb. The Out-GridView cmdlet receives objects whereas the cmdlets that use the Format verb return only formatted text. > You can view a subset of the data by using the Where-Object cmdlet that filters and passes the results to the Out-GridView cmdlet. For example, Get-SPLogEvent | Where-Object {$_.Area -eq "SharePoint Foundation"} | Out-GridView. > If the grid is displaying more than several hundred rows, it might run slowly, especially if performing complex filtering operations. For faster performance, export the data to Excel 2016.

Windows PowerShell を使用して診断ログの表示とフィルター処理を行うにはTo view and filter diagnostic logs by using Windows PowerShell

  1. 次のメンバーシップがあることを確認します。Verify that you have the following memberships:
  • SQL Server インスタンスにおける securityadmin 固定サーバー ロール。securityadmin fixed server role on the SQL Server instance.

  • 更新するすべてのデータベースに対する db_owner 固定データベース ロール。db_owner fixed database role on all databases that are to be updated.

  • PowerShell コマンドレットを実行するサーバーでの Administrators グループ。Administrators group on the server on which you are running the PowerShell cmdlets.

    管理者は Add-SPShellAdmin コマンドレットを使用して、権限を付与できます。An administrator can use the Add-SPShellAdmin cmdlet to grant permissions.

    注意

    アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に連絡してアクセス許可を要求してください。PowerShell アクセス許可の詳細については、「Add-SPShellAdmin」を参照してください。If you do not have permissions, contact your Setup administrator or SQL Server administrator to request permissions. For additional information about PowerShell permissions, see Add-SPShellAdmin.

  1. SharePoint 管理シェルに移動します。Go to the SharePoint Management Shell.

  2. PowerShell コマンド プロンプトで、次のコマンドを入力します。At the PowerShell command prompt, type the following command:

Get-SPLogEvent | Out-GridView
  1. 列を並べ替えるには、列見出しをクリックします。To sort columns, click the column header.

  2. 特定の文字列を検索するには、その文字列を [ フィルター] ボックスに入力します。検索はすべての列と行に対して行われます。その検索をクリアするには、[ X] をクリックします。To search for a specific string, type the string in the Filter box. Search is performed over all columns and rows. To clear the search, click X.

  3. 1つの条件のみに基づいてデータを抽出するには、 検索 ボックスに次のように入力します。 <property name> : <value> 。To filter data on only one criterion, type the following in the Search box: <property name>:<value>. たとえば、SharePoint Foundation 2013で発生したすべてのログ エントリを検索するには、「Area:SharePoint Foundation」と入力します。For example, to search for all log entries raised by SharePoint Foundation 2013, type the following: Area:SharePoint Foundation. フィルターをクリアするには、[ X] をクリックします。To clear the filter, click X.

  4. 複数の条件を使用するか、"次の値を含む"、"次の値で始まる"、"次の値で終わる"、またはその他の方法を使用して、データをフィルター処理するには、次の手順を実行します。To filter data by using more than one criterion or by using criteria with "contains, begins with, ends with" or other methods:

  5. [ 抽出条件の追加] ボタンをクリックします。Click Add criteria button.

  6. フィルター処理するプロパティのチェック ボックスをオンにし、[ 追加] をクリックします。Click the check box for the properties that you want to filter on, and then click Add.

  7. [ 次の値を含む] をクリックして、別のフィルター方法に変更します。使用できる方法は、[ 次の値を含む]、[ 次の値を含まない]、[ 次の文字列で始まる]、[ 次の値と等しい]、[ 次の値と等しくない]、[ 次の値で終わる]、[ 空である]、および [ 空でない] です。Click contains to change to a different filter method. The methods that are available are contains, does not contain, starts with, equals, does not equal, ends with, is empty, and is not empty.

  8. テキスト ボックスに値を入力します。Type a value in the text box.

  9. 手順 "b" で選択したプロパティごとに、手順 "c" と手順 "d" を繰り返します。Repeat steps "c" and "d" for each property that you selected in step "b".

  10. フィルター条件をすべて指定したら、検索条件に合うデータが表示されます。When all the filtering criteria are specified, the data that satisfies the criteria will appear.

  11. 特定のフィルターをクリアするには、[ X] ボタンをクリックします。To clear a specific filter, click the X button.

  12. すべてのフィルターをクリアするには、クエリ ビューを折りたたみ、[ すべてクリア] ボタンをクリックします。To clear all the filters, collapse the query view and then click the Clear All button.

グリッド データをスプレッドシートにエクスポートするにはTo export grid data to a spreadsheet

  1. エクスポートする行を選択します。次の方法で複数の行を選択できます。行のブロックを選択するには、Shift キーを押しながらドラッグします。個々の行を選択するには、Ctrl キーを押しながらクリックします。すべての行を選択するには、Ctrl キーを押しながら A キーを押します。Select the rows that you want to export. You can select multiple rows by using SHIFT+DRAG to select a block of rows, CTRL+CLICK to select specific rows, or CTRL+A to select all rows.

    データをスプレッドシートにコピーする前に、結果に対してフィルター処理と並べ替えを行うこともできます。データの並べ替えまたはフィルター処理を行った場合、表示可能なデータのみがコピーされます。You can also filter and sort the results before you copy the data into a spreadsheet. When you sort or filter data, only the resulting viewable data is copied over.

  2. Ctrl + C キーを使用して、選択した行をコピーします。Copy the selected rows by using CTRL+C.

  3. スプレッドシート ブック ページを開き、Ctrl + V キーを使用して、コピーした行をそこに貼り付けます。Open the spreadsheet workbook page, and then paste the copied rows into it by using CTRL+V.

詳細については、「 out-gridview 」と「 out-gridview」を参照してください。For more information, see Out-GridView and Out-GridView Revisited.