Exchange server 如何在Windows PowerShell中使用日志解析器,使用for each循环查询来自多个exchange服务器的日志?
我想通过使用for-each循环在windows powershell中使用下面提到的命令。如果你对这个问题有任何想法,请告诉我 因为我不知道如何为FROM参数输入多个值,因为我需要从给定位置搜索来自不同服务器的日志 我希望像下面这样输入FROM字段的值,但我不完全了解如何创建整个PowerShell脚本结构Exchange server 如何在Windows PowerShell中使用日志解析器,使用for each循环查询来自多个exchange服务器的日志?,exchange-server,powershell-3.0,Exchange Server,Powershell 3.0,我想通过使用for-each循环在windows powershell中使用下面提到的命令。如果你对这个问题有任何想法,请告诉我 因为我不知道如何为FROM参数输入多个值,因为我需要从给定位置搜索来自不同服务器的日志 我希望像下面这样输入FROM字段的值,但我不完全了解如何创建整个PowerShell脚本结构 \\server1\d$\Program Files\Microsoft\Exchange\V15\Logging\HttpProxy\Mapi\*.* \\server2\d$\Prog
\\server1\d$\Program Files\Microsoft\Exchange\V15\Logging\HttpProxy\Mapi\*.*
\\server2\d$\Program Files\Microsoft\Exchange\V15\Logging\HttpProxy\Mapi\*.*
我为单个服务器创建的命令:
LogParser.exe "
SELECT DateTime,AuthenticatedUser,UserAgent
FROM 'd:\Program Files\Microsoft\Exchange\V15\Logging\HttpProxy\Mapi\*.*'
WHERE AuthenticatedUser LIKE '%user1%'
AND UserAgent LIKE '%Microsoft Office%'" -i:CSV -o:csv > "C:\Log parser\server1\1.csv"
假设您可以访问远程服务器上的管理共享,您可以执行以下操作:
$servers = 'server1', 'server2', ...
$servers | ForEach-Object {
LogParser.exe -i:csv -o:csv -q "SELECT DateTime,AuthenticatedUser,UserAgent
FROM '\\${_}\D$\Program Files\Microsoft\Exchange\V15\Logging\HttpProxy\Mapi\*.*'
WHERE AuthenticatedUser LIKE '%user1%'
AND UserAgent LIKE '%Microsoft Office%'" |
Out-File "C:\Log parser\${_}.csv"
}
您想在每个远程服务器上本地运行日志解析器吗?您好,Ansgar Wiechers,感谢您查看此查询。是的,我已在本地计算机上安装了日志解析器。通过使用它,我想从多个服务器远程提取报告。我已为单个服务器共享了一个命令,并且该命令在windows powershell中运行良好。如何通过powershell从本地计算机为多个服务器同时远程运行该命令?