Ok, so after some more digging there were a couple of issues with what I was doibng:
- Due to a typo I was trying to pass a remote syslog to local log location (used global.logdir in my script instead of global.loghost!)
- It seems either ESX is smart enough to know that a tcp/udp address isn't a correct option value for "global.logdir" (or maybe you have to use New-AdvancedSetting if the entry is blank? Maybe I'll test this if I have time)
The output settings to PowerCLI console host behaviour is annoying though, imo.
Thanks for your help - your confirmation that the syntax was correct at least put me on the track to check my variables