我正在研究一个 PowerShell 脚本,该脚本将每分钟监视一个服务器列表并在指定事件上触发。虽然我的剧本还没有完成,但这就是我目前所拥有的;
$TimeAgo = (Get-Date).addMinutes(-1)
$servers = "server1","server2","server3","server4"
foreach ($server in $servers)
{
$events = Get-EventLog application -computername $server -after $TimeAgo
foreach ($event in $events)
{
$event
}
}
foreach 正在完成它的工作,我可以看到来自“server1”的事件填充了屏幕,但随后它锁定了。它永远不会退出 server1,也永远不会移动到 server2。
关于发生了什么的任何想法?
对于调试,如果我在服务器上本地运行它,这将起作用:
$TimeAgo = (Get-Date).addMinutes(-1)
Get-EventLog application -after $TimeAgo
当 -ComputerName 被引入时,我得到一个闪烁的光标并且它没有移动到列表中的第二台服务器上。
编辑:它正在工作,完成第一台服务器只需要大约 6-7 分钟。如果我想每分钟扫描一次,这并不理想。