在 SharePoint Server 中設定診斷記錄

 

**適用版本:**SharePoint Server 2016

**上次修改主題的時間:**2017-07-31

**摘要:**了解如何從 SharePoint 管理中心網站或使用 Windows PowerShell 來設定 SharePoint Server 2013 和 SharePoint Server 2016 的診斷記錄。

本文內容:

  • 開始之前

  • 診斷記錄設定的最佳作法

  • 使用管理中心設定診斷記錄

  • 使用 Windows PowerShell 設定診斷記錄

必要條件

從 管理中心 執行此程序的使用者帳戶必須是 SharePoint 伺服器陣列管理員群組的成員。

診斷記錄設定的最佳作法

在初始部署或升級後,以及若對環境做出變更,SharePoint Server 環境可能需要組態診斷記錄的設定。下列清單中的指南可協助您建立特定環境的最佳作法。

  • 變更伺服器寫入記錄的磁碟。

    根據預設,SharePoint Server 會將診斷記錄寫入本身安裝所在的相同磁碟和磁碟分割。因為診斷記錄會使用大量的磁碟空間,而影響磁碟效能,因此建議您設定 SharePoint Server 寫入至未安裝 SharePoint Server 的其他磁碟。您也應該要考慮 SharePoint Server 寫入記錄之磁碟的連線速度。如果設定詳細資訊層級記錄,則伺服器會記錄大量的資料。因此,遲緩的連線可能會導致記錄效能不佳。

  • 限制記錄的磁碟空間使用量。

    根據預設,診斷記錄可使用的磁碟空間是不受限制的。因此,尤其若將記錄設定為寫入詳細資訊層級的事件時,請限制記錄使用的磁碟空間。當達到磁碟限制時,SharePoint Server 會在記錄新的記錄資料前,移除最舊的記錄。

  • 謹慎使用詳細資訊設定。

    您可以將診斷記錄設定為記錄詳細資訊層級的事件。這表示 SharePoint Server 會記錄所採取的每個動作。詳細資訊層級記錄會快速使用磁碟空間,而影響磁碟與伺服器的效能。您可以在做出重要變更時,使用詳細資訊層級記錄以記錄更多細節,然後在做出變更後將記錄重新設定為僅記錄較高層級的事件。

  • 定期備份記錄。

    診斷記錄包含重要的資料。因此,定期備份記錄可確保此資料被保留下來。在限制記錄的磁碟空間使用量時,或如果只將記錄保留幾天的時間,則在達到臨界值時,SharePoint Server 將自動刪除記錄檔案 (從最舊的檔案開始)。

  • 啟用事件記錄檔湧入保護。

    啟用此設定時,SharePoint Server 會偵測 Windows 事件記錄檔中的重複事件,並在狀況回復至一般狀態時才不再隱藏重複事件。

您可以設定事件記錄檔和追蹤記錄檔的診斷記錄層級。這會限制可寫入每個記錄檔的資訊類型和數量。下表定義事件記錄檔和追蹤記錄檔可用的記錄層級:

事件記錄檔層級

層級 定義

不會記錄。

重要

此訊息類型表示發生嚴重錯誤,導致解決方案重大失敗。

錯誤

此訊息類型表示緊急狀況。您應調查所有錯誤事件。

警告

此訊息類型表示可能需要加以留意的潛在問題。您應檢視並追蹤一段時間內所發生的警告訊息,以找出其模式。

資訊

不需對資訊訊息採取任何動作。不過該訊息對監視解決方案的狀態提供寶貴的資料。

詳細資訊

此事件記錄檔層級會記錄冗長的事件或訊息。

追蹤記錄檔層級

層級 定義

不寫入追蹤記錄檔。

未預期

此層級會記錄的訊息是有關導致解決方案停止處理的事件。設定為此層級時,記錄檔會包括未預期、例外狀況、判斷提示和重要層級的事件。

可監控

此層級會記錄的訊息是有關限制解決方案的功能,但未停止應用程式之所有無法復原的事件。設定為此層級時,記錄檔也會包括「未預期」設定所記錄的事件。

此層級會記錄所有未預期但未停止解決方案處理的事件。記錄檔設定為此層級時,記錄檔也會包括「可監控」設定所記錄的所有事件。

設為此層級時,追蹤記錄檔會包括除了「詳細資訊」和 VerboseEx 訊息之外的所有訊息。此層級會記錄所有有關所執行操作的高階資訊。此層級提供了足夠的詳細資訊,可建構資料流程和操作順序。系統管理員或支援專業人員可使用此記錄層級對問題進行疑難排解。若設為此層級,記錄檔也會包括「高」設定所記錄的所有事件。

詳細資訊

若設為此層級,記錄檔會包括大部分動作。詳細資訊追蹤會產生很多記錄訊息。此層級通常僅用於開發環境的偵錯作業。記錄檔若設定為此層級,記錄檔也會包括「中」設定所記錄的所有事件。

VerboseEx

此層級僅由 Set-SPLogLevelPowerShell Cmdlet 支援,且會包括極低層級的診斷資料。只應在開發環境中使用此層級。若定為此層級,記錄檔也會包括「詳細資訊」設定所記錄的所有事件。

使用管理中心設定診斷記錄

您可以使用 SharePoint 管理中心網站來設定診斷記錄。

使用管理中心設定診斷記錄

  1. 在管理中心中,按一下首頁上的 [監視]。

  2. 在 [監視] 頁面上,按一下 [報告] 區段中的 [設定診斷記錄]。

  3. 在 [診斷記錄] 頁面的 [事件節流] 區段中,按照下列方式設定事件節流:

    設定所有類別的事件節流:

    1. 選取 [所有類別] 核取方塊。

    2. 選取 [回報至事件記錄的最低緊急事件] 清單中的事件記錄檔層級。

    3. 選取 [回報至追蹤記錄的最低緊急事件] 清單中的追蹤記錄層級。

    設定一或多個類別的事件節流:

    1. 選取所需類別的核取方塊。

    2. 選取 [回報至事件記錄的最低緊急事件] 清單中的事件記錄檔層級。

    3. 選取 [回報至追蹤記錄的最低緊急事件] 清單中的追蹤記錄層級。

    設定一或多個子類別的事件節流 (您可以展開一或多個類別,並選取任何子類別):

    1. 按一下類別旁的加號 [(+)] 展開類別。

    2. 選取子類別的核取方塊。

    3. 選取 [回報至事件記錄的最低緊急事件] 清單中的事件記錄檔層級。

    4. 選取 [回報至追蹤記錄的最低緊急事件] 清單中的追蹤記錄層級。

    若要將所有類別的事件節流回復為預設設定:

    1. 選取 [所有類別] 核取方塊。

    2. 選取 [回報至事件記錄的最低緊急事件] 清單中的 [重設為預設]。

    3. 選取 [回報至追蹤記錄的最低緊急事件] 清單中的 [重設為預設]。

  4. 在 [防止事件記錄檔濫記] 區段中,選取 [啟用防止事件記錄檔濫記] 核取方塊。

  5. 在 [追蹤記錄] 區段的 [路徑] 方塊中,輸入要寫入記錄的資料夾路徑。

  6. 在 [記錄檔儲存天數] 方塊中,輸入要將記錄保留的天數 (1 到 366)。此時間過後,將會自動刪除記錄。

  7. 若要限制記錄檔可使用的磁碟空間,請選取 [限制追蹤記錄檔磁碟空間使用情況] 核取方塊,然後輸入要限制記錄檔的磁碟大小 (以 GB 為單位)。當記錄檔達到此值時,將會自動刪除較舊的記錄。

  8. 在 [診斷記錄] 頁面上進行所需變更後,請按一下 [確定]。

使用 Windows PowerShell 設定診斷記錄

您可以使用 PowerShell 來設定診斷記錄。

使用 Windows PowerShell 設定診斷記錄

  1. 確認您具備下列成員資格:

    • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

    • 所有要更新之資料庫上的 db_owner 固定資料庫角色。

    • 正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。

    系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 PowerShell Cmdlet 的權限。

    注意

    如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。如需 PowerShell 權限的其他資訊,請參閱 Add-SPShellAdmin

  2. 從 SharePoint 管理命令介面,變更伺服器寫入記錄的磁碟。

  3. 在 PowerShell 命令提示字元處,輸入下列命令:

    Set-SPDiagnosticConfig -LogLocation D:\DiagnosticLogs
    
  4. 若要限制記錄檔磁碟空間使用量,請在 PowerShell 命令提示字元處,輸入下列命令:

    Set-SPDiagnosticConfig -LogMaxDiskSpaceUsageEnabled
    

    或要指定記錄檔的磁碟空間上限:

    Set-SPDiagnosticConfig -LogDiskSpaceUsageGB 500
    
  5. 若要檢視目前記錄層級,請在 PowerShell 命令提示字元處,輸入下列命令:

    Get-SPLogLevel
    
  6. 若要變更記錄層級,請在 PowerShell 命令提示字元處,輸入下列命令:

    Set-SPLogLevel -TraceSeverity Monitorable
    

    若要將所有類別重新設定為預設層級,請在 PowerShell 命令提示字元處,輸入下列命令 ,然後按 ENTER :

    Clear-SPLogLevel
    
  7. 若要啟用事件記錄檔湧入保護,請在 PowerShell 命令提示字元處,輸入下列命令:

    Set-SPDiagnosticConfig -EventLogFloodProtectionEnabled
    

如需詳細資訊,請參閱 Set-SPDiagnosticConfigSet-SPLogLevelGet-SPLogLevel

See also

SharePoint Server 2016 監視概觀