在我的 Windows 电脑上遇到问题真让人疲惫。当我盯着蓝屏死机(BSOD)时,已经为时已晚。查找一个晦涩的 STOP 代码可能会让我找到一些线索,但这并不能在问题变得严重之前帮我找到它。即使系统没有完全崩溃,我也会遇到奇怪的故障,还得面对一项麻烦的任务——筛选事件查看器日志。虽然这是捕捉罪魁祸首的好地方,但它也记录了我系统所做的一切,还有很多调试和安全套件,因为它们知道在哪里寻找这些大海捞针的线索,而我的电脑已经糟糕到我别无选择,只能去找这个根本原因。
事件查看器记录了所有内容。应用程序崩溃、安全更新、驱动程序故障、系统关机、登录尝试——你能想到的,它全都记录在里面。这是在事情已经严重出错后调试不可或缺的工具。事实证明,Windows 已经有我需要的所有工具,可以在关键服务未启动或特定应用程序崩溃时设置警报。我只需要重新使用一个熟悉的生产力工具——任务计划程序。
Windows 调试不该是被动的噩梦
见到火花就扑灭火
我已经成功用 Windows 任务计划程序 提高了工作效率,比如早上 9 点启动所有工作应用。这让我想:如果任务计划程序能看时间,那它能监控其他系统事件吗?快速浏览界面后,我确认了我的想法。我为什么要等到崩溃后才去翻日志呢?我可以为发生的异常设置自定义通知。我们大多数人都知道 Windows 任务计划程序可以在登录时启动应用,但只要提供需要监控的事件 ID,它也能监控事件查看器。用过之后,我觉得事件查看器和任务计划程序的组合是任何认真调试者的核心工具,一旦你知道这些魔法数字,设置起来非常简单。
市面上有很多第三方系统监控程序,承诺监控您的系统健康并发送警报。其中很多都很不错,但需要付费——通常是定期订阅。我很快发现,这些昂贵的工具其实大多是在利用Windows已有的功能。它们只是给任务调度程序的触发器加了个华丽的界面,并收取您编制一长串对大多数用户有用的事件ID的费用。
如何让任务计划程序为你保驾护航
为了设置一个事件查看器的监视器,我打开了任务计划程序,点击新建任务(不是创建基本任务),并给它起了一个名称和描述。然后我点击了触发器选项卡,点击新建,在开始任务的下拉菜单中选择当事件发生时。现在,我需要填写三个字段来定位事件查看器的条目,即日志、源和事件 ID。事件 ID 是关键所在。通常在问题发生后,通过查看日志可以找到这些信息,以便你知道将来需要跟踪什么。以下是我发现对调试和安全特别有用的一些常见事件 ID:
为了设置当这些触发器触发时的通知,我需要一个脚本,因为微软在其无奈之下,已经取消了发送电子邮件警报和显示屏幕警告的功能。这个操作是在操作选项卡下进行的。我选择了唯一可用的选项,叫做启动程序,并指向一个简单的自定义 PowerShell 脚本。这个脚本可以实现各种功能。针对我的重要安全警报(例如失败的登录 ID 4625),我有一个简单的 PowerShell 脚本,可以给我发送电子邮件。
这对管理远程系统的网络管理员来说非常合适。对于一些不太重要的事情,比如应用程序崩溃(ID 1001),你可以写一个脚本,让它在屏幕上闪烁一条消息。关键在于,你可以控制操作,从简单的弹出窗口到复杂的自动修复。
热门跟贴