问题描述
我有一个遍历服务器列表的脚本,并在这些服务器上运行各种命令。
我正在尝试为运行PowerShell脚本的计算机和运行命令的远程计算机记录命令及其结果。
现在,我正在尝试将PSLogging模块与Start-Log cmdlet一起使用。我能够记录在运行Powershell脚本的系统上运行的命令,但是在远程计算机上运行的东西没有显示。
我的代码如下。
Import-Module -Name "C:\Windows\System32\WindowsPowerShell\v1.0\Modules\PSLogging\2.5.2\PSLogging.psm1"
$Date = Get-Date -Format "MM-dd-yyyy hh-mm tt"
$LogFileOutput = "Output Log"+" $Date"+".log"
$LogFilePlusPath = "\\files\Logs\"+"$LogFileOutput"
Start-Log -LogPath "\\files\Logs\" -LogName "LogFileOutput" -ScriptVersion "1.0"
Servers = @("Server1","Server2")
ForEach ($Server in $Servers)
{
Write-Host "Running script on $Server"
param([string]$Server)
Invoke-Command -Computer $Server -ScriptBlock {
Write-Host "Stopping IIS App Pool on $Server."
c:\windows\system32\inetsrv\appcmd.exe stop apppool "IISAppPool"
Write-Host "Switching Service to manual on $Server and stopping it."
Stop-Service Service -Force
Set-Service Service-StartupType Manual
} -args $Server
}
Write-Host "Script complete at $(Get-Date -Format "hh:mm tt MM/dd/yyyy") Logs available at \\files\Logs"
Stop-Log
脚本起作用,并且服务和应用程序池按需执行其操作。结果只是没有被记录。
日志中唯一的东西是:
在Server1上运行脚本
Server2上的运行脚本
脚本已于2020年9月19日下午12:20完成\\ files \ Logs中可用的日志
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)