我有一个运行计划任务的Windows Server 2008,主要是.bat文件调用PHP文件。我在服务器上有两个用户,一个是管理员,另一个是标准用户。

我使用标准用户使用事件查看器清除任务调度器历史选项卡中的历史日志。现在它不会再记录任何历史了。在history选项卡中,所有计划任务都不再具有历史记录。但是,最后运行结果返回0x0,调度器工作正常。 请建议。


当前回答

I have another possible answer for those wondering why event log entries are not showing up in the History tab of Task Scheduler for certain tasks, even though All Task History is enabled, the events for those tasks are viewable in the Event Log, and all other tasks show history just fine. In my case, I had created 13 new tasks. For 5 of them, events showed fine under History, but for the other 8, the History tab was completely blank. I even verified these tasks were enabled for history individually (and logging events) using Mick Wood's post about using the Event Viewer.

Then it hit me. I suddenly realized what all 8 had in common that the other 5 did not. They all had an ampersand (&) character in the event name. I created them by exporting the first task I created, "Sync E to N", renaming the exported file name, editing the XML contents, and then importing the new task. Windows Explorer happily let me rename the task, for example, to "Sync C to N & T", and Task Scheduler happily let me import it. However, with that pesky "&" in the name, it could not retrieve its history from the event log. When I deleted the original event, renamed the xml file to "Sync C to N and T", and imported it, voila, there were all of the log entries in the History tab in Task Scheduler.

其他回答

任务调度器应用程序中的调整实际上只是控制某个事件日志的启用状态,所以你可以通过Windows命令行等效地调整任务调度器“历史”模式:

wevtutil set-log Microsoft-Windows-TaskScheduler/Operational /enabled:true

查询当前状态。

wevtutil get-log Microsoft-Windows-TaskScheduler/Operational

对于那些不喜欢敲击键盘的人来说,以下是上述内容的简化版本:

wevtutil sl Microsoft-Windows-TaskScheduler/Operational /e:true
wevtutil gl Microsoft-Windows-TaskScheduler/Operational

赢 8.1 专业版

上面布莱恩·克拉克的回答对我很有效,但我在这里发帖是为了那些可能不得不遵循与我略有不同的顺序的人。

当我运行控制面板>管理工具>右键单击任务调度器-“以管理员身份运行”时,我发现操作窗格已经包含以下操作:

Disable All Tasks History

所以我的机器已经启用了历史记录。但是我的机器需要先禁用历史记录,然后返回并“启用所有任务历史记录”。在那之后,我的历史显示,我没有收到更多的错误。我假设action执行了某种类型的初始化或设置,从操作系统安装一直没有正确完成。

我还要补充一点,我必须退出任务调度器并重新进入它,然后才能来回切换历史启用/禁用设置。

下面是我在Windows 2008R2服务器上找到它的地方。 提升任务调度程序 点击“Task Scheduler Library” 它作为一个选项出现在右边的“Actions”面板上。

这可以帮助其他在任务调度程序中没有启用/禁用历史记录选项的地方。

打开事件查看器(在计算机管理或管理工具>事件查看器中)。

在事件查看器中,确保预览窗格正在显示(视图>预览窗格应勾选)

在左侧窗格中展开“应用程序和服务日志”,然后展开“Microsoft、Windows、TaskScheduler”,然后选择“Operational”。

您应该在预览窗格中显示Actions,其中有两个部分- Operational和下面的事件nnn, TaskScheduler。Operational部分中列出的项目之一应该是Properties。单击此项目,“常规”选项卡上有“启用日志记录”选项。

我的问题是已经达到最大日志大小,即使选择了覆盖旧事件选项,它也没有记录新事件。我怀疑这可能是一个权限问题,但我将其更改为存档时,所有现在再次工作。

希望这能帮助到其他人。如果你没有我上面提到的选项,我很抱歉,但我不知道你应该去哪里找。

我认为困惑的是,在我的服务器上,我必须右键单击左手边的任务调度程序库,然后右键单击以获得启用或禁用所有任务历史记录的选项。

希望这能有所帮助