Option Explicit Const EVENT_TYPE_SUCCESS = 0 Const EVENT_TYPE_ERROR = 1 Const EVENT_TYPE_WARNING = 2 Const EVENT_TYPE_INFORMATION = 4 Const EVENT_ID_BASE_STATE_OK = 100000 Const EVENT_SOURCE = "SCRIPTNAME" dim blnIsMOM ' wird True, wenn unter MOM gestartet dim intDebug ' DebugLevel on error resume next ' Disable Error handling temporarily wscript.echo "Starting..." ' Raises an error, if not running with WSH. if err = 0 then WSCript.ECHO "Running in MOM Emulation - Mode" blnIsMOM = false intdebug = wscript.Arguments.named("Debug") if intdebug = "" then intdebug = 1 ' Output, Errors only else blnIsMOM = true intdebug = ScriptContext.Parameters.Get("Debug") end if err.clear on error goto 0 ' Enable Error handling again debuglog "Script running", 0 ' Hier muss dann der eigentliche CODE rein. ' debuglog "Script finished", 0 Sub CreatePerfData(strObjectName,strCounterName,strInstanceName,numValue) ' ObjectName Name of the performance object ' CounterName Name of the performance counter ' InstanceName Name of the performance instance ' Value Numeric value of the data 'Sample: CreatePerfData "File","File Size",objFile.Path,objFile.Size ' CreatePerfData ,,, if blnismom then Set objPerfData = ScriptContext.CreatePerfData objPerfData.ObjectName = strObjectName objPerfData.CounterName =strCounterName objPerfData.InstanceName = strInstanceName objPerfData.Value = numValue ScriptContext.Submit objPerfData else wscript.echo "-------------- PERFDATA --------------------" wscript.echo "Perfname :"& strObjectName wscript.echo "PerfCounter :"& strCounterName wscript.echo "PerfInstance:"& strInstanceName wscript.echo "PerfValue:"& numValue end if End Sub Sub CreateEvent(intEventNumber,intEventType,strEventSource,strEventMessage) ' CreateEvent ,,, ' CreateEvent 100,EVENT_TYPE_INFORMATION,"Script Test","Hello world." if blnismom then dim objEvent Set objEvent = ScriptContext.CreateEvent() objEvent.EventNumber = intEventNumber objEvent.EventType = intEventType objEvent.EventSource = strEventSource objEvent.Message = strEventMessage ScriptContext.Submit objEvent Set objEvent = Nothing else wscript.echo "-------------- EVENT --------------------" wscript.echo "EventNumber:"& intEventNumber wscript.echo "EventType :"& intEventType wscript.echo "EventSource:"& strEventSource wscript.echo "Message :"& strEventMessage end if End Sub Sub CreateAlert(ByVal sName, ByVal sDescription, ByVal sSource, ByVal lAlertLevel) ' CreateAlert "Name","Description","Source",9000 if blnismom then Dim oAlert Set oAlert = ScriptContext.CreateAlert() oAlert.Name = sName ' Name der Regel, die den Alert startet oAlert.Description = sDescription oAlert.AlertSource = sSource oAlert.AlertLevel = lAlertLevel ' Severity ' 10 Success ' 20 Information ' 30 Warning ' 40 Error ' 50 Critical Error ' 60 Security Issue ' 70 Service unavailable ' oAlert.Owener = "[unassigned]" ' oAlert.ResolutionState = 0 ' New ScriptContext.Submit oAlert else wscript.echo "-------------- ALERT --------------------" wscript.echo "Alertname :"& sName wscript.echo "AlertLevel :"& lAlertLevel wscript.echo "AlertSource:"& sSource wscript.echo "Description:"& sDescription end if End Sub sub debuglog (byval strMessage, byval intlevel) ' Please use th following levels ' =0 normal Output data / processing Data ' =1 Errors ' =2 Warnings ' =3 Informational messages ' >3 Debug Messages if cint(intlevel) <= cint(intdebug) then if blnismom then scriptContext.echo now() &","& intlevel &":"& strMessage else wscript.echo now() &","& intlevel &":"& strMessage end if end if end sub