【问题标题】:using powershell to set an event logs "Maximum Size" action使用 powershell 设置事件日志“最大大小”操作
【发布时间】:2012-09-27 19:27:43
【问题描述】:
在查看事件日志属性时(在 Server 2008 中),您可以设置三个操作,以便在达到最大事件日志大小时发生什么:
使用 Powershell,我可以使用 limit-eventlog 设置事件日志保留,将 OverflowAction 设置为 DoNotOverwrite 或 OverwriteAsNeeded,但我似乎无法选择 Archive the log when full 操作。
有什么想法可以通过 powershell 选择此选项吗?
【问题讨论】:
标签:
c#
powershell
event-log
【解决方案1】:
唯一的方法(IMO)是修改registry。下面是一个为应用程序日志设置“完整时归档日志”操作的示例:
new-ItemProperty -path HKLM:\SYSTEM\CurrentControlSet\services\eventlog\Application `
-name AutoBackupLogFiles -Value 1 -PropertyType 'dword'
如果之前已经选择了选项,则键已经存在,因此只需将键值设置为 1:
set-ItemProperty -path HKLM:\SYSTEM\CurrentControlSet\services\eventlog\Application `
-name AutoBackupLogFiles -Value 1
【讨论】:
-
除了@Christian 的回答之外,您还必须将event log key 下的Retention 值设置为0xffffffff。为此,您可以使用@Christian 的答案中编写的代码。
更多信息请参见MSDN