Limit-EventLog
設定事件記錄檔屬性,以限制事件記錄檔的大小及其專案的存留期。
語法
Limit-EventLog
[-LogName] <String[]>
[-ComputerName <String[]>]
[-RetentionDays <Int32>]
[-OverflowAction <OverflowAction>]
[-MaximumSize <Int64>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Cmdlet 會 Limit-EventLog
設定傳統事件記錄檔的大小上限、必須保留每個事件的時間長度,以及記錄達到其大小上限時會發生什麼情況。 您可以使用它來限制本機或遠端電腦上的事件記錄檔。
包含 EventLog 名詞的 Cmdlet (EventLog Cmdlet) 僅適用於傳統事件記錄檔。
若要從 Windows Vista 和更新版本的 Windows 中使用 Windows 事件記錄技術的記錄檔取得事件,請使用 Get-WinEvent
。
範例
範例 1:增加事件記錄檔的大小
Limit-EventLog -LogName "Windows PowerShell" -MaximumSize 20KB
此命令會將本機電腦上的 Windows PowerShell 事件記錄檔大小上限增加到 20480 位元組(20 KB)。
範例 2:保留指定持續時間的事件記錄檔
Limit-EventLog -LogName Security -ComputerName "Server01", "Server02" -RetentionDays 7
此命令可確保 Server01 和 Server02 電腦上的安全性記錄檔中的事件至少會保留 7 天。
範例 3:變更所有事件記錄檔的溢位動作
$Logs = Get-EventLog -List | ForEach {$_.log}
Limit-EventLog -OverflowAction OverwriteOlder -LogName $Logs
Get-EventLog -List
Max(K) Retain OverflowAction Entries Log
------ ------ -------------- ------- ---
15,168 0 OverwriteOlder 3,412 Application
512 0 OverwriteOlder 0 DFS Replication
512 0 OverwriteOlder 17 DxStudio
10,240 7 OverwriteOlder 0 HardwareEvents
512 0 OverwriteOlder 0 Internet Explorer
512 0 OverwriteOlder 0 Key Management Service
16,384 0 OverwriteOlder 4 ODiag
16,384 0 OverwriteOlder 389 OSession Security
15,168 0 OverwriteOlder 19,360 System
15,360 0 OverwriteOlder 15,828 Windows PowerShell
本範例會將本機計算機上所有事件記錄檔的溢位動作變更為 OverwriteOlder。
第一個命令會取得本機計算機上所有記錄檔的記錄檔名稱。 第二個命令會設定溢位動作。 第三個命令會顯示結果。
參數
-ComputerName
指定遠端電腦。 預設是本機電腦。
輸入遠端電腦的 NetBIOS 名稱、因特網通訊協定 (IP) 位址或完整功能變數名稱 (FQDN)。 若要指定本機計算機,請輸入計算機名稱、點 (.
) 或localhost。
此參數不依賴 Windows PowerShell 遠端處理。 即使您的電腦未設定為執行遠端命令,您也可以使用 的 Limit-EventLog
ComputerName 參數。
類型: | String[] |
別名: | CN |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Confirm
執行 Cmdlet 之前先提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-LogName
指定事件記錄檔。 輸入一或多個事件記錄檔的記錄檔名稱(Log 屬性的值,而非 LogDisplayName),並以逗號分隔。 不允許通配符。 此為必要參數。
類型: | String[] |
別名: | LN |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-MaximumSize
指定以位元組為單位的事件記錄檔大小上限。 輸入介於 64 KB 和 4 GB 之間的值。 值必須以 64 KB (65536) 來分隔。
此參數會指定代表傳統事件記錄檔之 System.Diagnostics.EventLog 物件的 MaximumKilobytes 屬性值。
類型: | Int64 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-OverflowAction
指定事件記錄檔達到其大小上限時會發生什麼情況。
此參數可接受的值為:
DoNotOverwrite
:會保留現有的專案,並捨棄新的專案。OverwriteAsNeeded
:每個新項目都會覆寫最舊的專案。OverwriteOlder
:新事件會覆寫早於MinimumRetentionDays 屬性所指定值的事件。 如果 MinimumRetentionDays 屬性值未指定任何早於的事件,則會捨棄新的事件。
此參數會指定代表傳統事件記錄檔之 System.Diagnostics.EventLog 物件的 OverflowAction 屬性值。
類型: | OverflowAction |
別名: | OFA |
接受的值: | OverwriteOlder, OverwriteAsNeeded, DoNotOverwrite |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RetentionDays
指定事件必須保留在事件記錄檔中的最小天數。
此參數會指定代表傳統事件記錄檔之 System.Diagnostics.EventLog 物件的 MinimumRetentionDays 屬性值。
類型: | Int32 |
別名: | MRD |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
None
您無法使用管線將輸入傳送至此 Cmdlet。
輸出
None
此 Cmdlet 不會產生任何輸出。
備註
若要在 Windows Vista 和更新版本的 Windows 上使用這個 Cmdlet,請使用 [以系統管理員身分執行] 選項開啟 Windows PowerShell。
此 Cmdlet 會變更代表傳統事件記錄檔的 System.Diagnostics.EventLog 物件屬性。 若要檢視事件記錄檔屬性的目前設定,請輸入
Get-EventLog -List
。