VirtualServer Enabled State

AP.F5.LTM.Monitor.VirtualServer.EnabledState (UnitMonitor)

Monitors VirtualServer Enabled State via SNMP and Powershell

Knowledge Base article:

Summary

Monitors F5 VirtualServer Enabled State, Uses a Powershell Script and SNMP to collect all VirtualServer Enabled States for a SyncFailoverGroup, Supports Cookdown!

Thresholds

SNMP Information

SNMP OIDs Used;

Element properties:

TargetAP.F5.LTM.VirtualServer
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeAP.F5.LTM.Monitor.VirtualServerEnabledState.Powershell
RemotableTrue
AccessibilityPublic
Alert Message
F5 Virtual Server Enabled State Change Alert
Virtual Server Name : {0},
Sync-Failover Group : {1}

Has changed Enabled State to {2} (0=Error, 1=Enabled, 2=Disabled, 3=Disabled by Parent)

Given Reason is : {3}
RunAsDefault

Source Code:

<UnitMonitor ID="AP.F5.LTM.Monitor.VirtualServer.EnabledState" Accessibility="Public" Enabled="true" Target="AP.F5.LTM.VirtualServer" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="AP.F5.LTM.Monitor.VirtualServerEnabledState.Powershell" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="AP.F5.LTM.Monitor.VirtualServer.EnabledState.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="AP.F5.LTM.VirtualServer"]/Name$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="AP.F5.LTM.SyncFailoverGroup"]/Name$</AlertParameter2>
<AlertParameter3>$Data/Context/Property[@Name='EnabledState']$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='DetailedReason']$</AlertParameter4>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="VirtualServerEnabled" MonitorTypeStateID="VirtualServerEnabled" HealthState="Success"/>
<OperationalState ID="VirtualServerDisabled" MonitorTypeStateID="VirtualServerDisabled" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>600</IntervalSeconds>
<SyncTime>00:01</SyncTime>
<Debug>false</Debug>
<DeviceAddresses>$Target/Host/Host/Property[Type="AP.F5.LTM.SyncFailoverGroup"]/Addresses$</DeviceAddresses>
<DevicePorts>$Target/Host/Host/Property[Type="AP.F5.LTM.SyncFailoverGroup"]/Ports$</DevicePorts>
<DeviceCommunities>$Target/Host/Host/Property[Type="AP.F5.LTM.SyncFailoverGroup"]/Communities$</DeviceCommunities>
<VirtualServerName>$Target/Property[Type="AP.F5.LTM.VirtualServer"]/FullName$</VirtualServerName>
</Configuration>
</UnitMonitor>