Windows 是否有可以通知并终止长时间运行的进程的工具?

Windows 是否有可以通知并终止长时间运行的进程的工具?

有时,不同服务器上的不同计划任务会毫无原因地停止工作(至少我无法明确识别原因),我希望通过电子邮件收到通知和/或希望自动终止该进程。
我正在寻找的工具应该作为 Windows 服务运行,我想通过正则表达式指定要查找的进程,这些正则表达式应应用于所有正在运行的进程的命令行。

答案1

我还没有听说过有这样的程序,但是在设置计划任务时,您可以进入“设置”选项卡,并将其设置为在任务运行超过 X 小时/天时终止该任务。

答案2

使用以下方式设置计划任务任务终止

taskkill.exe /f /fi “status eq not responding”

但当然你不会得到任何关于它杀死了什么的反馈

也许您可以让命令回显哪些程序没有响应,然后通过电子邮件将回显发送给您。

或者检查可视化Cron可以帮你完成工作,它让你设置计划任务,也可以终止任务并以你想要的任何方式通知你。使用简单的 GUI 设置计划任务。但是我找不到它是否还检查没有响应的任务...

替代文本

虽然我怀疑您所要求的解决方案要么需要您输入一些编码,要么根本就不存在……

答案3

SysinternalsSuite 有一个名为pslist.exe

列表使用 Windows NT/2K 性能计数器来获取其显示的信息。您可以在 MSDN 中找到 Windows NT/2K 性能计数器的文档,包括 Windows NT 内置性能监视器 PerfMon 的源代码

它可以接受“ ”参数来 从网络上的另一台机器\\computer获取进程信息

一旦你决定要终止一个进程,有一个类似的工具,pskill.exe.
这在远程机器上也同样有效。


长时间运行的任务不一定会停滞
您应该使用pslist命令分析您的任务以识别停滞状态。
然后可以使用这些工具远程终止此类错误任务(从单个“控制”机器)。

这两个工具都是命令行,允许您从控制机器编写脚本
(您只需要在目标机器上进行远程访问)。

相关内容