0

有没有比 wmi 更快的方法可以使用 powershell 远程收集 Windows 事件日志?如果没有,我们如何进行高效的多线程 wmi-query 以从多个主机收集日志?

4

1 回答 1

0

调查

Get-EventLog

您可以在作业中启动它以对其进行多线程处理:

Start-Job -ArgumentList $HostName { return $(Get-EventLog -ComputerName "$($args[0])" -LogName Application -Source "Source Name") }

然后收集所有数据:

$Logs = $(Get-Job | Wait-Job | Receive-Job)

看起来像这样:

foreach($HostName in $Hosts) {
    Start-Job -ArgumentList $HostName { return $(Get-EventLog -ComputerName "$($args[0])" -LogName Application -Source "Source Name") }
}

$Logs = $(Get-Job | Wait-Job | Receive-Job)
于 2013-08-19T07:48:22.800 回答