- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
旨在通过脚本增加所有 Windows 日志的默认大小并更改一些其他属性。以前用 wevtutil
来实现,但在 2016 年无法让它工作,所以切换到 Powershell 的 Limit-Eventlog
。全新安装带有最新更新的 Windows Server 2016。
从默认日志属性开始:
PS> Get-Eventlog -List
+--------+--------+-------------------+---------+------------------------+
| Max(K) | Retain | OverflowAction | Entries | Log |
+--------+--------+-------------------+---------+------------------------+
| 300 | 0 | OverwriteAsNeeded | 2,599 | Application |
| 20,480 | 0 | OverwriteAsNeeded | 0 | HardwareEvents |
| 512 | 7 | OverwriteAsNeeded | 0 | Internet Explorer |
| 20,480 | 0 | OverwriteAsNeeded | 0 | Key Management Service |
| 20,480 | 0 | OverwriteAsNeeded | 10,390 | Security |
| 20,480 | 0 | OverwriteAsNeeded | 3,561 | System |
| 15,360 | 0 | OverwriteAsNeeded | 360 | Windows PowerShell |
+--------+--------+-------------------+---------+------------------------+
一次更改一个日志,没有错误:
PS> Limit-Eventlog -Logname Application -MaximumSize 200MB -OverflowAction OverwriteAsNeeded
PS> Limit-Eventlog -Logname HardwareEvents -MaximumSize 200MB -OverflowAction OverwriteAsNeeded
PS> Limit-Eventlog -Logname "Internet Explorer" -MaximumSize 200MB -OverflowAction OverwriteAsNeeded
PS> Limit-Eventlog -Logname "Key Management Service" -MaximumSize 200MB -OverflowAction OverwriteAsNeeded
PS> Limit-Eventlog -Logname Security -MaximumSize 200MB -OverflowAction OverwriteAsNeeded
PS> Limit-Eventlog -Logname System -MaximumSize 200MB -OverflowAction OverwriteAsNeeded
PS> Limit-Eventlog -Logname "Windows Powershell" -MaximumSize 200MB -OverflowAction OverwriteAsNeeded
PS> Get-Eventlog -List
+---------+--------+-------------------+---------+------------------------+
| Max(K) | Retain | OverflowAction | Entries | Log |
+---------+--------+-------------------+---------+------------------------+
| 204,800 | 0 | OverwriteAsNeeded | 2,599 | Application |
| 204,800 | 0 | OverwriteAsNeeded | 0 | HardwareEvents |
| 204,800 | 0 | OverwriteAsNeeded | 0 | Internet Explorer |
| 204,800 | 0 | OverwriteAsNeeded | 0 | Key Management Service |
| 204,800 | 0 | OverwriteAsNeeded | 10,395 | Security |
| 204,800 | 0 | OverwriteAsNeeded | 3,561 | System |
| 204,800 | 0 | OverwriteAsNeeded | 362 | Windows PowerShell |
+---------+--------+-------------------+---------+------------------------+
我想避免对日志名称进行编码。从 Get-Help Limit-EventLog -example
可以看出,ForEach
有更好的方法。但是,这样做似乎仅将 Limit-Eventlog
应用于第一个日志,而对其余 6 个日志则失败。注意,我稍微更改了该值(200MB 到 100MB),以便很容易看到失败的地方。
$Logs = Get-Eventlog -List | Foreach {$_.log}
Limit-Eventlog -Logname $Logs -MaximumSize 100MB -OverflowAction OverwriteAsNeeded
Get-Eventlog -List
+---------+--------+-------------------+---------+------------------------+
| Max(K) | Retain | OverflowAction | Entries | Log |
+---------+--------+-------------------+---------+------------------------+
| 102,400 | 0 | OverwriteAsNeeded | 2,606 | Application |
| 204,800 | 0 | OverwriteAsNeeded | 0 | HardwareEvents |
| 204,800 | 0 | OverwriteAsNeeded | 0 | Internet Explorer |
| 204,800 | 0 | OverwriteAsNeeded | 0 | Key Management Service |
| 204,800 | 0 | OverwriteAsNeeded | 10,399 | Security |
| 204,800 | 0 | OverwriteAsNeeded | 3,563 | System |
| 204,800 | 0 | OverwriteAsNeeded | 369 | Windows PowerShell |
+---------+--------+-------------------+---------+------------------------+
以及 6 个错误:
Limit-Eventlog : The value supplied for MaximumSize parameter has to be in the range of 64 KB to 4GB with an increment of 64 KB. Please enter a proper
value and then retry.
At line:2 char:5
+ Limit-Eventlog -Logname $Logs -MaximumSize 100MB -OverflowAction ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Limit-EventLog], Exception
+ FullyQualifiedErrorId : ValueOutofRange,Microsoft.PowerShell.Commands.LimitEventLogCommand
Limit-Eventlog : The value supplied for MaximumSize parameter has to be in the range of 64 KB to 4GB with an increment of 64 KB. Please enter a proper
value and then retry.
At line:2 char:5
+ Limit-Eventlog -Logname $Logs -MaximumSize 100MB -OverflowAction ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Limit-EventLog], Exception
+ FullyQualifiedErrorId : ValueOutofRange,Microsoft.PowerShell.Commands.LimitEventLogCommand
Limit-Eventlog : The value supplied for MaximumSize parameter has to be in the range of 64 KB to 4GB with an increment of 64 KB. Please enter a proper
value and then retry.
At line:2 char:5
+ Limit-Eventlog -Logname $Logs -MaximumSize 100MB -OverflowAction ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Limit-EventLog], Exception
+ FullyQualifiedErrorId : ValueOutofRange,Microsoft.PowerShell.Commands.LimitEventLogCommand
Limit-Eventlog : The value supplied for MaximumSize parameter has to be in the range of 64 KB to 4GB with an increment of 64 KB. Please enter a proper
value and then retry.
At line:2 char:5
+ Limit-Eventlog -Logname $Logs -MaximumSize 100MB -OverflowAction ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Limit-EventLog], Exception
+ FullyQualifiedErrorId : ValueOutofRange,Microsoft.PowerShell.Commands.LimitEventLogCommand
Limit-Eventlog : The value supplied for MaximumSize parameter has to be in the range of 64 KB to 4GB with an increment of 64 KB. Please enter a proper
value and then retry.
At line:2 char:5
+ Limit-Eventlog -Logname $Logs -MaximumSize 100MB -OverflowAction ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Limit-EventLog], Exception
+ FullyQualifiedErrorId : ValueOutofRange,Microsoft.PowerShell.Commands.LimitEventLogCommand
Limit-Eventlog : The value supplied for MaximumSize parameter has to be in the range of 64 KB to 4GB with an increment of 64 KB. Please enter a proper
value and then retry.
At line:2 char:5
+ Limit-Eventlog -Logname $Logs -MaximumSize 100MB -OverflowAction ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Limit-EventLog], Exception
+ FullyQualifiedErrorId : ValueOutofRange,Microsoft.PowerShell.Commands.LimitEventLogCommand
最佳答案
我尝试了两种不同的方法,并且都按预期工作...两者都在做相同的事情,只是使用不同的语法。
将日志名称数组传递给Limit-Eventlog
:
$Logs = Get-Eventlog -List | select -ExpandProperty Log
Limit-Eventlog -Logname $Logs -MaximumSize 0.5Gb -OverflowAction OverwriteAsNeeded -WhatIf
并使用foreach
将每个日志名称单独传递给Limit-Eventlog
:
$Logs = Get-Eventlog -List | select -ExpandProperty Log
Foreach ($Log in $Logs) {
Limit-Eventlog -Logname $Log -MaximumSize 0.5Gb -OverflowAction OverwriteAsNeeded -WhatIf
}
不进行测试时,您需要删除 -WhatIf
。
关于powershell - 使用 Powershell Limit-Eventlog 设置 Windows 日志最大大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46686705/
我尝试使用 WriteEntry和 WriteEvent EventLog 的方法类(class)。 EventLog.WriteEntry("Saravanan", "Application log
我正在使用 Tridion 2009 SP1。我想要做的是在组件完成某个工作流程后启动一个事件。直观地说,我已经尝试使用 OnProcessInstanceFinishPost 事件,但是,只有当用户
我正在尝试使用 nuget 中的 Microsoft.Diagnostics.Tracing.EventRegister 注册 EventSource。我重建我的项目并生成 list 。 之后,我通过
我的以下代码失败并显示“...已在本地计算机上注册为源”,即使我首先进行检查也是如此: lock ( eventLock ) { string eventLog = Constants.Eve
我想在 spark-submit 或 start 处设置 spark.eventLog.enabled 和 spark.eventLog.dir -all level -- 不要求在 scala/ja
我已经将 Serilog.Sinks.EventLog 接收器安装到一个小的后台工作服务项目中。但是,我尝试写入的日志都没有出现在事件日志中。 这是我的 Main 方法的主体。指定为源的 Recurr
似乎找不到正确的语法来查询特定日期范围之间的事件日志 *[EventData[Data[@Name='SubjectUserName'] and (Data=
下面是我在运行紧接着的代码时遇到的异常: The source was not found, but some or all event logs could not be searched. Ina
使用以下代码,我能够显示“应用程序”日志下列出的所有条目: EventLog appLog = new EventLog(); appLog.Log = "Application"; appLog.M
我正在运行 Windows 2003 并且我想在特定时间获取事件列表......下午 12:06 之后。我怎样才能在那个时候只得到那些事件?我试过这个: powershell get-eventlog
我正在使用 get-eventlog 提取和过滤系统事件日志数据。我发现的是 get-event log 无法正确返回与某些条目关联的消息。这些条目通常出现在事件日志查看器中。例如。 get-even
当我尝试读取用 lz4 压缩的 Spark 2.4.4 eventLog 时,我得到一个空的 DataFrame: cd /opt/spark-2.4.4-bin-hadoop2.7 bin/spar
以下在本地计算机上运行良好,但是当我输入 -ComputerName "myRemoteName"时,它挂起并且即使在大约 5 分钟后也不返回任何内容;但程序似乎仍在运行。 它是否试图通过“线路”返回
我正在使用以下行创建新的事件日志 new-eventlog -LogName "Visual Studio Builds" -Source "Visual Studio" 我想每次都运行它,因为如果我
很抱歉提出这样的问题,但是我已经花了1/2个小时,而且还没有好的解决方案。 我想从事件日志中获取特定应用程序的最新日期。到目前为止,我的代码是: $event = get-eventlog -logn
我试图限制与IP地址具有相同结构的最后100个错误(例如{1,3}。\ D {1,3}。\ D {1,3}。\ D {1,3})使用get-eventlog。我将输出打印出来,该输出显示了计算机上的最
在阅读 Tony Northup 和 friend 编写的 70-536 考试培训指南时,我遇到了以下问题: CAUTION - Avoid EventLog objects in partial t
我想测试 Spark 中的机器学习库 Mllib 并在 Eclipse 中建立一个依赖项的 Maven 项目。当我尝试编译this时例如,我收到以下异常:`ERROR SparkContext:初始化
编辑 2011 年 9 月 26 日:仍在寻找答案,如果您有任何想法,请发布并告诉我! 问题总结 当我对自己的计算机或附近的计算机运行 Get-EventLog 时,我没有看到任何异常,并且一切都按预
我正在使用 NLog 记录我的日志记录,一切正常,但现在我已经将应用程序安装到 IIS 6 中的 WebService 上,它没有记录到 EventLog,所有其他日志都工作正常。 我需要配置什么才能
我是一名优秀的程序员,十分优秀!