Configuring some ESX hosts with PowerCLI and was setting syslog to my loginsight server. I kept getting errors advising that the Syslog.Global.LogHost option does not exist.
PS H:\Scripts> $vmhost = Get-VMHost -Name ESX01 PS H:\Scripts> Get-AdvancedSetting -Entity $vmhost -Name Syslog.Global.LogHost Get-AdvancedSetting : 4/02/2015 9:04:48 AM Get-AdvancedSetting "Syslog.Global.LogHost" option doesn't exist. At line:1 char:1 + Get-AdvancedSetting -Entity $vmhost[0] -Name Syslog.Global.LogHost + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [Get-AdvancedSetting], InvalidName + FullyQualifiedErrorId : Client20_SystemManagementServiceImpl_ConvertToHashtable_OptionNotFound,VMware.VimAutomation.ViCore.Cmdlets.Commands.GetAdvancedSetting .
I know this option exists I can see it in the GUI
It then dawned on me that, no surely it couldn’t be, yes, yes it is. Case sensitive.
PS H:\Scripts> Get-AdvancedSetting -Entity $vmhost[0] -Name Syslog.global.logHost Name Value Type Description ---- ----- ---- ----------- Syslog.global.log... VMHost .
So a little trap for young players.
Set syslog server.
$vmhost = Get-VMHost -Name ESX01 #To add multiple syslog servers separate via a comma (,) [string]$SysLogServers = "udp://loginsight.home.local:514" Get-AdvancedSetting -Entity $vmHost -Name Syslog.global.logHost | Set-AdvancedSetting -Value $SysLogServers -Confirm:$false .
Environmental Information:
ESX 5.5
