启用分析或调试事件日志时出错:无法通过已启用的直接通道执行请求的操作。 必须先禁用通道,然后才能执行请求的操作

本文帮助修复在启用分析或调试事件日志时发生的错误。

原始产品版本:   Windows Server 2012 R2
原始 KB 数:   2488055

症状

当您尝试启用或更改分析或调试事件登录事件查看器的属性时,您可能会收到以下错误:

查询错误
查询中的一个或多个日志有错误。
无法通过已启用的直接通道执行请求的操作。 必须先禁用通道,然后才能执行请求的操作。

无法通过已启用的直接通道执行请求的操作

在尝试使用 Wevtutil 工具进行更改时,可能会收到以下错误:

通道无法激活。
无法保存配置或激活日志 <log name> 。
无法通过已启用的直接通道执行请求的操作。 必须先禁用通道,然后才能执行请求的操作。

您必须先选择 " 查看",在事件查看器中 显示分析日志和调试日志 ,以使分析日志和调试日志在事件查看器中可见。 例如,在应用程序和服务 Logs\Microsoft\Windows\WMI-Activity\Trace中, wmi-活动日志 (全称Microsoft-Windows-WMI-活动/跟踪) 位于应用程序和服务中。

原因

对于分析日志和调试日志,事件查看器不允许在日志已启用时查询或查看事件,并 **根据需要覆盖了事件 (最旧的事件先) ** 配置。

对于管理和操作日志(如系统、应用程序和安全日志),可以在 **需要时根据需要 (最旧的事件) ** 已配置的情况下查看它们。

默认情况下,分析日志和调试日志配置为不 **覆盖事件 (手动清除日志) **。 对于在达到最大日志大小时将丢弃旧事件的循环日志记录,您可以 **根据需要启用 "覆盖事件" (最旧事件优先) **。

即使显示了此错误,也会进行日志记录。 此错误仅表示您无法查看当前正在记录的事件。

解决方案

只要您不在事件查看器中根据需要设置覆盖事件(使用或配置了 Wevtutil 中的),就可以查看分析日志或调试日志。 /retention:false /rt:false 如果您根据需要设置了 覆盖事件 (/retention:false) 由于您需要循环日志记录,因此必须先禁用该日志,然后才能查看这些事件。 例如,若要使用 Wevtutil 工具启用 WMI-Activity 日志,请根据需要设置 "覆盖事件",并将大小更改为 150 MB (默认值为 1024 KB) 您可以运行以下命令:

wevtutil set-log "Microsoft-Windows-WMI-Activity/Trace" /enabled:false
wevtutil set-log "Microsoft-Windows-WMI-Activity/Trace" /enabled:true /quiet:true /retention:false /maxsize:153600

在问题再现后,禁用日志并将其导出以供审阅。

wevtutil set-log "Microsoft-Windows-WMI-Activity/Trace" /enabled:false
wevtutil export-log "Microsoft-Windows-WMI-Activity/Trace" %temp%\%computername%_WMI-Activity.evtx