【发布时间】:2014-06-09 16:50:46
【问题描述】:
我是 Powershell 的 100% 新手,我环顾四周,并没有真正找到关于这个主题的很多内容,但如果其他地方已经回答了这个问题,我深表歉意。
有一个服务不时停止运行,通常是每天早上 7 点到 8 点左右,我可以恢复其功能的唯一方法是重新启动服务。与软件相关。
我每 15 分钟解析一次事件日志以查找特定错误。
$lookForError = get-eventlog -before $currentDate -after $pastDate -logname application -source "Windows Backup"
$itCrashed = $FALSE
$lookForError
<#
while($itCrashed = false)
{
if ($lookForError -eq )
}#>
这里的大致思路,就是检查事件是否发生,如果发生了,将itCrashed改为true,退出循环,发起服务重启命令。
我不太确定如何使用 powershell 检测到上述错误的存在。
【问题讨论】:
-
发生这种情况时服务本身会停止吗?
-
没有服务只是不幸挂起,但它确实在日志中产生错误,它会产生一个“错误应用程序”错误和访问冲突错误。
-
事件日志中出现的错误是什么?您是否必须搜索文本,还是会引发特定错误#?
-
错误产生的一些模糊数据有 EventID(1000),应用程序错误是提供者。我曾计划使用“应用程序错误”提供程序和事件 ID 来检测。不确定这是否能回答您的问题。
-
有什么方法可以从 get-eventlog 的结果中提取这两个东西(事件 ID 和提供者),并在 if 语句中使用它们的值来查看返回的错误是否是错误我在找吗?
标签: powershell