DiskPartition Health Monitor Data Source

AP.F5.Monitor.DiskPartitionHealth.Powershell (UnitMonitorType)

Gets Node AvailabilityState via Powershell/SNMP (Cookdown compliant)

Element properties:

RunAsDefault
AccessibilityPublic
Support Monitor RecalculateFalse

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource AP.F5.DataSource.DiskPartitionHealth.Filtered Default
Probe ProbeAction AP.F5.Probe.DiskPartitionHealth.Powershell Default
DiskPartitionCriticalFilter ConditionDetection System.ExpressionFilter Default
DiskPartitionHealthyFilter ConditionDetection System.ExpressionFilter Default
DiskPartitionWarningFilter ConditionDetection System.ExpressionFilter Default

Overrideable Parameters:

IDParameterTypeSelectorDisplay NameDescription
IntervalSecondsint$Config/IntervalSeconds$Interval SecondsFrequency in seconds that module is run.
SyncTimestring$Config/SyncTime$Synchronisation TimeOffset that this module is started from.
Debugbool$Config/Debug$DebugDebug Flag, if true then additional info is posted to event log.
CriticalSpaceint$Config/CriticalSpace$Free Space Critical Level (\%)Free Space Critical Level, if Free space is Less than this level then Disk is Critical.
WarningSpaceint$Config/WarningSpace$Free Space Warning Level (\%)Free Space Warning Level, if Free space is Greater than this level then Disk is Heathy.

Source Code:

<UnitMonitorType ID="AP.F5.Monitor.DiskPartitionHealth.Powershell" Accessibility="Public">
<MonitorTypeStates>
<MonitorTypeState ID="DiskPartitionHealthy" NoDetection="false"/>
<MonitorTypeState ID="DiskPartitionWarning" NoDetection="false"/>
<MonitorTypeState ID="DiskPartitionCritical" NoDetection="false"/>
</MonitorTypeStates>
<Configuration>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="IntervalSeconds" type="xsd:integer"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="SyncTime" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="Debug" type="xsd:boolean"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="DeviceAddress" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="DevicePort" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="DeviceCommunity" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="DiskPartitionIndex" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="CriticalSpace" type="xsd:unsignedInt"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" minOccurs="1" name="WarningSpace" type="xsd:unsignedInt"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="IntervalSeconds" Selector="$Config/IntervalSeconds$" ParameterType="int"/>
<OverrideableParameter ID="SyncTime" Selector="$Config/SyncTime$" ParameterType="string"/>
<OverrideableParameter ID="Debug" Selector="$Config/Debug$" ParameterType="bool"/>
<OverrideableParameter ID="CriticalSpace" Selector="$Config/CriticalSpace$" ParameterType="int"/>
<OverrideableParameter ID="WarningSpace" Selector="$Config/WarningSpace$" ParameterType="int"/>
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="DS" TypeID="AP.F5.DataSource.DiskPartitionHealth.Filtered">
<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>
<SyncTime>$Config/SyncTime$</SyncTime>
<Debug>$Config/Debug$</Debug>
<DeviceAddress>$Config/DeviceAddress$</DeviceAddress>
<DevicePort>$Config/DevicePort$</DevicePort>
<DeviceCommunity>$Config/DeviceCommunity$</DeviceCommunity>
<DiskPartitionIndex>$Config/DiskPartitionIndex$</DiskPartitionIndex>
</DataSource>
<ProbeAction ID="Probe" TypeID="AP.F5.Probe.DiskPartitionHealth.Powershell">
<Debug>$Config/Debug$</Debug>
<DeviceAddress>$Config/DeviceAddress$</DeviceAddress>
<DevicePort>$Config/DevicePort$</DevicePort>
<DeviceCommunity>$Config/DeviceCommunity$</DeviceCommunity>
</ProbeAction>
<ConditionDetection ID="DiskPartitionHealthyFilter" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name="Percentage"]</XPathQuery>
</ValueExpression>
<Operator>Greater</Operator>
<ValueExpression>
<Value Type="Integer">$Config/WarningSpace$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
<ConditionDetection ID="DiskPartitionWarningFilter" TypeID="System!System.ExpressionFilter">
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name="Percentage"]</XPathQuery>
</ValueExpression>
<Operator>LessEqual</Operator>
<ValueExpression>
<Value Type="Integer">$Config/WarningSpace$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name="Percentage"]</XPathQuery>
</ValueExpression>
<Operator>GreaterEqual</Operator>
<ValueExpression>
<Value Type="Integer">$Config/CriticalSpace$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</ConditionDetection>
<ConditionDetection ID="DiskPartitionCriticalFilter" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">Property[@Name="Percentage"]</XPathQuery>
</ValueExpression>
<Operator>Less</Operator>
<ValueExpression>
<Value Type="Integer">$Config/CriticalSpace$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="DiskPartitionHealthy">
<Node ID="DiskPartitionHealthyFilter">
<Node ID="DS"/>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="DiskPartitionWarning">
<Node ID="DiskPartitionWarningFilter">
<Node ID="DS"/>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="DiskPartitionCritical">
<Node ID="DiskPartitionCriticalFilter">
<Node ID="DS"/>
</Node>
</RegularDetection>
</RegularDetections>
</MonitorImplementation>
</UnitMonitorType>