powershell脚本到尾部日志文件的多个远程服务器(代码片段)

author author     2022-12-28     336

关键词:

我需要擦亮这个脚本。我需要它在多个运行(5 - 都在同一个位置的日志文件)的Windows系统。我有一个很难搞清楚如何同时保证我能“尾巴”的日志全部5台服务器上的条目,并返回“确定”;终止,只有当所有5台服务器上生成的日志条目,而不只是让我们说他们的4工作。

下面是它是什么意思做:

  1. 启动服务,
  2. “尾巴”的日志文件
  3. 确认日志文件中包含的条目($waitfor
  4. 一旦日志条目中产生的终止
$serviceB = "my application service"
$logfile2 = "F:\App\log\wrapper.log"
$waitFor = "[4.2.3.GA (build: SVNTag=JBoss_4_2]”

Write-Host "Starting $serviceB"
Start-Service $serviceB
Write-Host "Waiting for $waitFor in $logfile2"
while (!((Get-Content $logfile2 -Tail 30) | ? $_ -match $waitFor)) 
    Start-Sleep -Seconds 5

如何使用一个foreach循环来实现让我们说 - 尾巴和等待日志条目上的所有5个远程系统在一个CSV文件?

答案

简而言之,你不能,不能在同一个会话,一次全部。每个日志必须在其自己的会话。我怎么知道,因为我已经试过wayyyy太多的时间来实现这一目标。嗯,你可以,做一台服务器在同一时间,和当那是使用一个循环做移动到下一个。

您可以使用一个for循环,达到每个服务器主机,但你需要弹出一个单独的PowerShell实例为每个。

那么你可以通过一个控制台会话,在同一时间做一台服务器,等待完成,让它消息你,当这样使用一个循环做移动到下一个。然而,如果它需要一段时间被人发现,字符串,那么它将成为喜欢看油漆干燥。

foreach ($RemoteHost in (Import-Csv -Path 'D:\Temp\serverlist.csv')) 

    # You code here
    Invoke-Command -ComputerName $RemoteHost -Credential 'domain\adminname' -ScriptBlock 
        # the rest of your code here:

    

既然你说的远程主机,那么这意味着你需要为他们启用PSRemoting,利用隐去除会话和使用的是远程主机的本地管理员组中的帐户。

您可以使用-tail - 等待,并消除该启动睡眠和线路抢一步也需要。

使用-tail - 等待,将显示日志,因为当一个条目被写入每个条目行。

Get-Content -Path $CurrentHostLog.FullName -Tail 0 -Wait 

所以,虽然我不是真正知道为什么你会想这-tail,看这些日志(一个或多个),因为您滚动只是在寻找一个简单的字符串

恕我直言,我建议刚开始各自如平行后台作业,并有你的职位空缺通知;文本,电子邮件,屏幕警报,等等,你当他们返回的结果你是经过。

用于删除或存档旧日志文件的 PowerShell 脚本在本地运行良好,但在远程位置无法运行

】用于删除或存档旧日志文件的PowerShell脚本在本地运行良好,但在远程位置无法运行【英文标题】:PowerShellscripttodeleteorarchiveolderlogfilesworksfinelocallybutitdidn\'tworkonremotelocation【发布时间】:2021-08-2307:52:27【问题描述】:我遇到了... 查看详情

powershell企业应用 - 第05章编写powershell日志系统

...向里写入输出信息。通过以下命令创建文本日志文件使用Powershell写入信息到文本日志文件在脚本中,我们可以使用Add-Content命令向日志文件中输出脚本执行的信息。CSV日志文件本质也是文本文件,但可以在Excel中打开,更加方便... 查看详情

按顺序运行多个powershell脚本-在文件夹上-将脚本合并到主脚本中(代码片段)

...这个帖子-不幸的是它没有用。HowtorunmultipleScriptsonebyoneinapowershellscript在主.ps文件中-我已经链接到需要按顺序运行的powershell脚本RunScriptsinorder'C:UsersWPDesktopScripts1 查看详情

每月清理日志的 Powershell 脚本

】每月清理日志的Powershell脚本【英文标题】:PowershellScripttocleanuplogsonaMonthlyBasis【发布时间】:2021-01-0622:51:21【问题描述】:Powershell新手又来了一个问题。我们目前有一个存储文本文件的日志文件夹。我的主管希望我创建一个... 查看详情

Powershell - 运行位于远程机器上的脚本,该脚本反过来从网络共享访问文件

】Powershell-运行位于远程机器上的脚本,该脚本反过来从网络共享访问文件【英文标题】:Powershell-Runascriptlocatedataremotemachinewhichinturnaccessfilesfromanetworkshare【发布时间】:2011-01-0416:43:38【问题描述】:我正在尝试使用以下命令执... 查看详情

Powershell:创建 Az 副本到 blob 容器日志文件或详细

】Powershell:创建Az副本到blob容器日志文件或详细【英文标题】:Powershell:CreateAzcopytotheblobContainerlogfileorverbose【发布时间】:2021-07-0514:58:35【问题描述】:您好,我是powershell新手,我在复制c:filesroot/folder/files下面有一个powershell脚... 查看详情

从 C# 异步运行多个 PowerShell 脚本

】从C#异步运行多个PowerShell脚本【英文标题】:AsynchronouslyrunningmultiplePowerShellscriptsfromC#【发布时间】:2021-08-1617:45:24【问题描述】:简要说明我正在尝试做的事情:我正在开发一个.NetWinForm应用程序,我试图在远程服务器上运行... 查看详情

powershell远程下载exe并执行

参考技术A要靠powershell脚本编写是很困难的,但是可以编写为exe后缀的可执行文件。网上有powershell脚本打包软件可以很轻松的将powershell脚本打包成“exe”可执行文件。 查看详情

在 C# 中使用不同的凭据调用远程 powershell 脚本

】在C#中使用不同的凭据调用远程powershell脚本【英文标题】:callingremotepowershellscriptwithdifferentcredentialinC#【发布时间】:2013-05-0805:12:31【问题描述】:我正在尝试在远程服务器中调用一个powershell脚本文件,该文件基本上获取一个... 查看详情

使用 powershell 和 7zip 创建存档的脚本

】使用powershell和7zip创建存档的脚本【英文标题】:Scripttocreatearchiveusingpowershelland7zip【发布时间】:2012-11-0115:31:55【问题描述】:我们有几台服务器每天将日志文件写入C:\\Logs。每个月,应该运行一个脚本来识别超过30天的文件... 查看详情

powershell批量拷贝本地文件到远程多台主机(代码片段)

 前提条件 参考 批量拷贝本地文件到远程主机自动化脚本$user="administrator"#系统用户$password=ConvertTo-SecureString"YOU_password"-AsPlainText-Force#用户密码$pchost=\'192.168.19.10\',\'192.168.12.249\'#目标主机IP,有多少编写多少powe 查看详情

Powershell:记录文件移动到日志文件,通过写日志

】Powershell:记录文件移动到日志文件,通过写日志【英文标题】:Powershell:Recordfilesmovedtologfile,viawrite-log【发布时间】:2013-05-1513:57:46【问题描述】:警告:我的无知-道歉我想用函数写入日志文件:“Write-Log”例如Write-Log-Message"... 查看详情

使用 PowerShell 将多个 CSV 文件合并为一个

】使用PowerShell将多个CSV文件合并为一个【英文标题】:MergingmultipleCSVfilesintooneusingPowerShell【发布时间】:2015-03-0916:28:09【问题描述】:您好,我正在寻找将目录中的所有csv文件合并到一个文本文件(.txt)的powershell脚本。所有csv文... 查看详情

powershell此powershell脚本是从sccmdb获取scep日志并将其导出为csv文件(代码片段)

查看详情

将 vs 项目发布到文件系统的 Powershell 脚本

】将vs项目发布到文件系统的Powershell脚本【英文标题】:Powershellscripttopublishvsprojectstofilesystem【发布时间】:2020-01-3005:22:31【问题描述】:我在一个解决方案中有大约25个项目。每次我修改这些项目时,我都必须构建并发布到本... 查看详情

Powershell 查看日志并发送电子邮件通知

】Powershell查看日志并发送电子邮件通知【英文标题】:Powershelltolookatlogandsendemailnotification【发布时间】:2019-05-2902:44:12【问题描述】:脚本新手。我需要帮助创建一个powershell脚本,该脚本将查看日志文件并搜索关键字,例如失... 查看详情

使用 Powershell 在远程计算机上运行脚本

】使用Powershell在远程计算机上运行脚本【英文标题】:UsingPowerShelltorunscriptsonaremotecomputer【发布时间】:2014-07-2607:33:19【问题描述】:我的任务是创建一个可以从命令提示符运行的powershell脚本,该脚本将利用MicrosoftWord(2013)打开... 查看详情

尾部多个日志流利

】尾部多个日志流利【英文标题】:Tailmultiplelogsfluentd【发布时间】:2014-09-0717:23:40【问题描述】:我正在尝试使用以下配置在fluentd中跟踪多个日志:<source>typetailtages.workers.worker1format/^\\[(?<timestamp>.*?.*?)(?<log_level>[IN... 查看详情