Monitor.updatesStatus

KL.KSC.Monitor.updatesStatus (UnitMonitor)

Up to date base's status.

Element properties:

TargetKL.KSC.Server
Parent MonitorSystem.Health.SecurityState
CategorySecurityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.TimedScript.ThreeStateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
updatesStatus
Up to date base's status.
RunAsDefault

Source Code:

<UnitMonitor ID="KL.KSC.Monitor.updatesStatus" Accessibility="Public" Enabled="true" Target="KL.KSC.Server" ParentMonitorID="Health!System.Health.SecurityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.TimedScript.ThreeStateMonitorType" ConfirmDelivery="true">
<Category>SecurityHealth</Category>
<AlertSettings AlertMessage="KL.KSC.Monitor.updatesStatus.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Warning" MonitorTypeStateID="Warning" HealthState="Warning"/>
<OperationalState ID="Success" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>1800</IntervalSeconds>
<SyncTime/>
<ScriptName>updStatus.js</ScriptName>
<Arguments>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$ $Target/Property[Type="KL.KSC.Server"]/updatesStatus$</Arguments>
<ScriptBody><Script>
var ServerName = WScript.Arguments(0);
var updatesStatus = WScript.Arguments(1);
var oAPI =new ActiveXObject("MOM.ScriptAPI");
var oBag = oAPI.CreatePropertyBag();
oBag.AddValue("ServerName", ServerName);
switch (updatesStatus){
case '0':
case '1':
oBag.AddValue("Result","Ok")
break
case '2':
oBag.AddValue("Result","Warning")
break
case '3':
oBag.AddValue("Result","Critical")
break
default:
oBag.AddValue("Result","Ok")
};
oAPI.Return(oBag);
</Script></ScriptBody>
<TimeoutSeconds>60</TimeoutSeconds>
<ErrorExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Critical</Value>
</ValueExpression>
</SimpleExpression>
</ErrorExpression>
<WarningExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Warning</Value>
</ValueExpression>
</SimpleExpression>
</WarningExpression>
<SuccessExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Ok</Value>
</ValueExpression>
</SimpleExpression>
</SuccessExpression>
</Configuration>
</UnitMonitor>