在 Windows 上配置事件查看器日誌大小

Jacki

Windows 事件查看器日誌存儲分析 Windows 中的服務和應用程序的狀態、排除錯誤和審核安全事件時所需的有用信息。默認情況下,Windows 中的事件查看器日誌的大小是有限的,當超出文件大小時,新事件開始覆蓋舊事件。如果發送到事件查看器的事件太多,則可能僅記錄最後幾個小時的事件,這可能不足以進行有效的監視和日誌分析。

為了防止舊事件被覆蓋,並確保事件在足夠長的時間內始終存在,您可以增加事件查看器日誌的最大大小。

了解更多:如何清除事件查看器中的所有事件日誌

內容:

如何使用 PowerShell 設置 Windows 事件日誌大小?

Windows 事件日誌文件存儲在%SystemRoot%System32WinevtLogs目錄為.EVTX文件。請注意,每個日誌都有一個單獨的文件。因此,您可以僅管理您需要的 Windows 日誌的最大大小,並為其他日誌保留默認設置。

您可以使用 PowerShell 查看 Windows 上所有啟用的事件查看器日誌的當前限制:

Get-Eventlog -List

您可以使用 Get-WinEvent cmdlet 獲取特定事件日誌文件的大小。例如,以下是獲取安全日誌文件的當前大小和最大大小的方法:

Get-WinEvent -ListLog Security| Select MaximumSizeInBytes, FileSize, IsLogFull, OldestRecordNumber, IsEnabled, LogMode

您可以使用 PowerShell 獲取包含事件日誌文件的文件夾的總大小:
"{0:N2} MB" -f ((gci c:windowsSystem32WinevtLogs| measure Length -s).sum / 1Mb)

要增加日誌的最大大小,您可以使用wevtutul命令行工具(新大小以字節為單位設置):

wevtutil sl "Application" /ms:200000000

或者您可以使用 PowerShell 設置新的最大應用程序日誌文件大小:

Limit-Eventlog -Logname Application -MaximumSize 200MB -OverflowAction OverwriteOlder

從事件查看器控制台調整事件日誌文件大小

增加最大日誌大小的最簡單方法是直接從事件查看器控制台。

  1. 打開事件查看器 MMC 管理單元 (eventvwr.msc);
  2. 選擇所需的日誌(例如Security)並打開其屬性;
  3. 設置新的限制最大日誌大小 (KB)並保存更改;
  4. 您還可以選擇達到最大日誌文件大小時要採取的操作:根據需要覆蓋事件(最舊的事件優先)。默認情況下使用此模式,這意味著新事件只會覆蓋舊事件。
    日誌滿時存檔,不要覆蓋事件– 當前事件日誌存檔在System32WinevtLogs文件夾已滿,新事件將寫入新的 EVTX 文件。您可以通過事件查看器中的“打開已保存的日誌”菜單訪問已存檔的事件文件。
    不要覆蓋事件(手動清除日誌)– 啟用此選項可保護您的舊事件不被覆蓋。請注意,必須手動清除日誌才能寫入新事件。

使用 GPO 增加 Windows 事件日誌文件的大小

您可以使用組策略集中管理 Active Directory 域中的計算機或服務器上的事件日誌文件的大小。

  1. 運行組策略管理管理單元 (gpmc.msc),創建一個新的 GPO,並將其鏈接到包含您要更改其事件查看器設置的計算機或服務器的組織單位(您也可以將 GPO 鏈接到域根);
  2. 導航到以下 GPO 部分電腦配置->政策->管理模板->Windows組件nts->事件日誌服務。該目錄包含用於管理基本 Windows 日誌的節點:
    Application
    Security
    Setup
    System
  3. 要增加日誌的最大大小,請選擇指定最大日誌文件大小 (KB)選項,啟用它,並設置所需的大小;
  4. 更新客戶端上的組策略設置,並檢查日誌屬性中現在是否指定了新的最大日誌文件數,並且您無法更改它。如果您嘗試設置不同的大小,則會出現錯誤:
    Event Viewer
    The Maximum Log Size specified is not valid. It is too large or too small. The Maximum Log Size will be set to the following: 61440 KB

增加 Active Directory 域控制器上的最大安全日誌大小允許您:

  • 存儲用戶的域登錄歷史記錄並查看特定 Windows 主機的成功/失敗登錄嘗試;
  • 查找AD中用戶賬戶被鎖定的根源;
  • 識別誰在 AD 中創建了用戶、重置用戶的密碼或更改特定安全組的成員身份。

上述 GPO 部分不包含其他事件日誌的選項應用程序和服務日誌 -> Microsoft。如果需要增加另一個事件日誌(標準事件日誌除外)的大小,可以通過註冊表來完成。 Windows 事件日誌設置存儲在 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesEventLog 中<log_name>註冊表項。最大日誌文件大小由以下因素決定最大尺寸參數(REG_DWORD 類型)。您可以使用組策略首選項配置域計算機上自定義事件日誌的 MaxSize 參數的註冊表值。

了解如何使用 GPO 配置註冊表項和設置。

在這個例子中,我們將增加目錄服務登錄域控制器。此日誌的設置存儲在以下註冊表​​項 HKLMSYSTEMCurrentControlSetServicesEventLogDirectory Service 中。

  1. 打開 GPO 並轉到電腦配置->偏好設置->Windows 設置->登記處;
  2. 選擇新的->註冊表項;
  3. 使用以下設置創建新的註冊表參數:
    Hive: HKEY_LOCAL_MACHINE
    Key path: SYSTEMCurrentControlSetServicesEventLogDirectory Service
    Value name: MaxSize
    Value type: REG_DWORD
    Value data: 52428800 (the maximum file size is given in bytes. In our example it is 50 MB.)

例如,如果您想要長期存儲包含與 RDS 主機的遠程桌面連接歷史記錄的日誌,則需要增加日誌的大小終端服務-RemoteConnectionManager紀錄.

通過增加 Windows 事件日誌的大小,您可以在更長的時間內獲取更多信息。例如,您可以使用事件日誌獲取 Windows 重新啟動歷史記錄、找出誰從共享網絡文件夾中刪除了文件或更改了 NTFS 權限。