Das kannst du mit einer ganz normalen TCP oder UDP Verbindung, je nachdem worauf dein Syslog Server lauscht.
$Server = <server-ip>
$Port = <server-port> # gewöhnlich 514
$Message = "Testnachricht von PowerShell"
try {
$Client = New-Object System.Net.Sockets.TcpClient
$Client.Connect($Server, $Port)
$Stream = $Client.GetStream()
$Writer = New-Object System.IO.StreamWriter($Stream)
$Writer.WriteLine($Message)
$Writer.Flush()
$Client.Close()
} catch {
Write-Host "Fehler beim Senden der Nachricht: $_"
}
Hier ist noch ein Beispiel mit UDP
$Server = <server-ip>
$Port = <server-port> # gewöhnlich 5044
$Message = "Testnachricht von PowerShell"
$Client = New-Object System.Net.Sockets.UdpClient
$Client.Connect($Server, $Port)
$Bytes = [System.Text.Encoding]::ASCII.GetBytes($Message)
$Client.Send($Bytes, $Bytes.Length)
$Client.Close()