问题标签 [wevtutil]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xpath - 如何在 wevtutil 中使用 xpath 来检索特定时间以来的事件
我不知道xpath。我看过 W3 教程,但它们似乎不起作用。
我正在使用 wevtutil 从 Windows 事件日志中提取事件
我在 Windows Server 2008 R2 Enterprise 上
如果我使用以下命令仅列出最后三个事件:
我得到以下结果:
如您所见,有一个带有 SystemTime 属性的 TimeCreated 元素。我只想说 SystemTime 介于两次之间的那些。
如果我在上一个命令中添加 xpath:
所有返回的是:
如果我将 xpath 更改为Event/System/TimeCreated
,我会得到与上面列出的相同的 xml。
所以两个问题:
如何在没有所有其他元素的情况下仅获得 TimeCreated 元素(这对我来说不太重要)?
如何检索 SystemTime 属性在两个指定值之间的位置?
如果有人可以向我解释为什么我不能按照 W3 教程中的建议单独使用 TimeCreated,那也很好。
powershell - Wevtutil 仅输出新的事件日志
我运行命令wevtutil qe Application /rd:false /f:text
并得到如下所示的输出。一段时间后,可能会生成新的事件日志,我只想阅读这些新的事件日志,即 Event[2]、Event[3]、Event[4] 等。
如何使用wevtutil
工具仅生成这些新事件日志?
事件[0]:
- 日志名称:应用程序
- 来源:Microsoft-Windows-LoadPerf
- 日期:2016-04-21T23:15:16.832
- 事件 ID:1000
- 任务:不适用
- 级别:信息
- 操作码:信息
- 关键字:不适用
- 用户:S-1-5-18
- 用户名:NT AUTHORITY\SYSTEM
- 电脑:WIN-IONOGQTF9O5
- 说明:WmiApRpl (WmiApRpl) 服务的性能计数器已成功加载。数据部分中的记录数据包含分配给该服务的新索引值。
事件[1]:
- 日志名称:应用程序
- 来源:Microsoft-Windows-LoadPerf
- 日期:日期:2016-04-21T23:15:13.097
- 事件编号:3011
- 任务:不适用
- 级别:信息
- 操作码:信息
- 关键字:不适用
- 用户:S-1-5-18
- 用户名:NT AUTHORITY\SYSTEM
- 电脑:WIN-IONOGQTF9O5
- 说明:卸载服务 WmiApRpl (WmiApRpl) 的性能计数器字符串失败。数据部分的第一个 DWORD 包含错误代码。
windows - 如何从 wevtutil 输出中获取描述字段
我可以从事件日志中获取 MsiInstaller 生成的最新 5 个事件 -
但是输出的描述性太强了。是否可以仅获取描述字段作为输出。
windows - WEVTUtil 导出特定事件
我只想从安全中导出事件 id 4624
下面的代码从安全中导出所有事件(我只想要 4624);
当导出所有 4624 个事件时,我只想过滤事件:
这将是带有 IP 的 RDP 日志,因为“Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational”中的日志没有 IP(只有用户名):(我听说这是因为 RDP 连接受 TLS 保护...
windows - " remote wevtutil "该帐户无权从本站登录。"
我负责在大约 15 个 Windows 机器的网络上运行 Windows 安全日志的集中备份。为了自动执行此任务,我一直在编写一个 Powershell 脚本,该脚本利用 wevtutil 的 /r 参数远程完成所有操作。所有的盒子都连接到我希望将日志复制到的 Sharepoint 网络驱动器,以便我可以集中所有日志,但我遇到了一些麻烦。
当我将运行它的 Windows 框的 ip 传递给它时,该脚本运行良好。日志会顺利复制到 Sharepoint。当我告诉它在本地复制日志时,该脚本也运行良好。但是,当脚本尝试将计算机的日志远程复制到共享点时,出现Failed to Archive Security log. The account is not authorized to log in from this station.
错误。
命令的格式是
wevtutil epl Security \\path\to\sharepoint\[hostname]-[datetime]Security.evtx /r:[hostname]
我以域管理员身份运行脚本。我还使用本地管理员的凭据运行了脚本,但出现了一个通用的访问被拒绝错误。
谷歌搜索错误消息主要包括计算机无法访问网络驱动器(特别是远程 wevtutil),并且包括很多乱七八糟的东西
或者
没有产生任何结果。我也仅限于 Powershell 1,所以我不能远程使用 Powershell 本身 AFAIK。
我可以将脚本放在每台机器上并使用任务调度程序在本地运行它,但我希望有一个更优雅的解决方案。有没有人有以这种方式使用 wevtutil 的经验,可以为我指明正确的方向,或者甚至建议更好的技术/工具?
windows-7 - 根据日期/时间而不是路径查询所有事件日志
我正在调查我的 PC 上的问题(更确切地说是xcopy
一堆文件期间的共享冲突),并且我正在考虑验证事件日志,但我想调查在开始之间发生的所有事件那xcopy
和它的结束,就像:
(时间戳是从命令中检索的echo [!TIME!]
,一个在命令之前,一个在xcopy
命令之后)
不接受此命令,因为在使用 时*
不允许使用wevtutil qe
。我可以查看事件查看器内部,但随后我需要调查所有可能的日志(我对此不是很熟悉)。
有没有办法查询所有事件日志并根据时间戳过滤它们?
windows - Wevtutil\Event Viewer:使用 XPath 过滤器获取具有不同事件 ID 的事件列表
我需要使用“wevtutil”工具获取 id 为 6005 或 6006 的事件列表。此命令工作正常:
但我需要同时获取 ID 为 6005 和 6006 的两个事件。我试过了
但它返回
指定的参数过多。参数不正确。
我应该如何解决它?
注意:每个事件都有以下 XML 结构
c++ - 为什么在 EventWrite 函数调用成功后我有空的 Windows 日志
我有一个包含多个事件和两个通道的清单文件。我通过 mc 命令生成包含和资源文件:
我将资源文件链接到应用程序中。
我通过 wevtutil 命令在系统中安装清单:
在应用程序中,我使用 EventRegister 进行初始化日志,使用 EventWrite 进行日志写入。生成日志事件的下一个代码返回 ERROR_SUCCESS: EVENT_DATA_DESCRIPTOR 数据;
此外,我向我的 LocalService 应用程序授予读取权限:
我使用“NT AUTHORITY\LocalService”帐户启动我的应用程序,例如服务:
我 manifest.man 中声明的频道已添加到 WinEvents 日志中,但为空。在应用程序中,我每隔一秒通过 writeEvent 写入日志,结果为 ERROR_SUCCESS,但我的日志文件仍然为空。
更新:
我创建了带有重现步骤的github 存储库
bash - 有没有办法安静地运行“wevtutil”命令
描述:我有一个脚本,它假设正在收集日志系统信息,但是在 shell 脚本结束时,以下命令输出的错误wevtutil epl "$ALOG" "${SYSNAM}_${SAFNAM}.evtx"
是Failed to export log...
. 我遇到的问题是最后一条消息
ISSUE:我很满意该命令让用户意识到发生了错误并且(我将单独解决该问题)。问题是此错误消息的输出会影响脚本显示的任务栏的打印输出。事实上,在脚本运行结束时,消息会扭曲打印输出
期望的结果:我想wevtutil
安静地运行上面的命令,同时记下错误(可能通过将错误消息script_error.txt
连同条件一起转发到文件),或者如果有某种我不知道的聪明的解决方法我也愿意尝试这种方式,我希望向用户显示的输出是干净的而不是倾斜的。
以下是我在下面遇到的问题的一些示例