########################################################
# Syslog を送信する
########################################################
function SendSyslog( $SyslogServer, $SyslogMessage){
# UDP port
$Port = 514
# アセンブリがロードされていなかったらロードする
$Lib = "System.Net"
$AssembliesName = [Appdomain]::CurrentDomain.GetAssemblies() | % {$_.GetName().Name}
if( -not ($AssembliesName -contains $Lib)){
[void][System.Reflection.Assembly]::LoadWithPartialName($Lib)
}
# 送信データを作る
$ByteData = [System.Text.Encoding]::UTF8.GetBytes($SyslogMessage)
# UDP ソケット作る
$UDPSocket = $null
$UDPSocket = New-Object System.Net.Sockets.UdpClient($SyslogServer, $Port)
if( $UDPSocket -ne $null ){
# 送信
[void]$UDPSocket.Send($ByteData, $ByteData.Length)
# ソケット Close
$UDPSocket.Close()
}
}
|