2007/12/13

特定のイベントログをトリガーにメール送信

Windows Server 2003 SP2で実施。

例:アプリケーションログに、イベントID8019が出力された場合
eventtriggers /create /TR "ID8019" /L APPLICATION /EID 8019 /TK C:\mail.vbs


---C:\mail.vbs---
Set oMsg = CreateObject("CDO.Message")
oMsg.From = "FROM@DOMAIN"
oMsg.To = "TO@DOMAIN"
oMsg.Subject = "イベントID8019発生通知"
oMsg.TextBody = "イベントID8019が発生しました" & vbCrLf & Now
oMsg.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
oMsg.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _
"MAILSERVERIPADDRESS"
oMsg.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
oMsg.Configuration.Fields.Update
oMsg.Send


eventtriggersは色々オプションがあるので、もっと詳細な絞込みは可能です。

eventtriggers[.exe] /create [/s Computer [/u Domain\User [/p Password]]] /tr TriggerName [/l [APPLICATION] [SYSTEM] [SECURITY] ["DNS Server"] [LOG] [DirectoryLogName] [*]] {[/eid ID] | [/t {ERROR | INFORMATION | WARNING | SUCCESSAUDIT | FAILUREAUDIT}] | [/so Source]} [/d Description] /tk TaskName