DiskPartition Health Monitor Data Source
AP.F5.Monitor.DiskPartitionHealth.Powershell (UnitMonitorType)
Gets Node AvailabilityState via Powershell/SNMP (Cookdown compliant)
Element properties:
Member Modules:
Overrideable Parameters:
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>