Simple Threshold

System.Performance.ThresholdMonitorType (UnitMonitorType)

A simple threshold monitor.

Element properties:

RunAsDefault
AccessibilityPublic
Support Monitor RecalculateFalse

Member Modules:

ID Module Type TypeId RunAs 
DataSource DataSource System.Performance.DataProvider Default
OverThresholdFilter ConditionDetection System.ExpressionFilter Default
UnderThresholdFilter ConditionDetection System.ExpressionFilter Default

Overrideable Parameters:

IDParameterTypeSelectorDisplay NameDescription
Frequencyint$Config/Frequency$Frequency
Thresholdstring$Config/Threshold$Threshold

Source Code:

<UnitMonitorType ID="System.Performance.ThresholdMonitorType" Accessibility="Public">
<MonitorTypeStates>
<MonitorTypeState ID="UnderThreshold"/>
<MonitorTypeState ID="OverThreshold"/>
</MonitorTypeStates>
<Configuration>
<xsd:element name="ComputerName" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="CounterName" type="xsd:string"/>
<xsd:element name="ObjectName" type="xsd:string"/>
<xsd:element name="InstanceName" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="AllInstances" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Frequency" type="xsd:unsignedInt"/>
<xsd:element name="ScaleBy" type="xsd:double" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Threshold" type="xsd:string"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="Frequency" Selector="$Config/Frequency$" ParameterType="int"/>
<OverrideableParameter ID="Threshold" Selector="$Config/Threshold$" ParameterType="string"/>
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="DataSource" TypeID="System.Performance.DataProvider">
<ComputerName>$Config/ComputerName$</ComputerName>
<CounterName>$Config/CounterName$</CounterName>
<ObjectName>$Config/ObjectName$</ObjectName>
<InstanceName>$Config/InstanceName$</InstanceName>
<AllInstances>$Config/AllInstances$</AllInstances>
<Frequency>$Config/Frequency$</Frequency>
<ScaleBy>$Config/ScaleBy$</ScaleBy>
</DataSource>
<ConditionDetection ID="UnderThresholdFilter" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Double">Value</XPathQuery>
</ValueExpression>
<Operator>LessEqual</Operator>
<ValueExpression>
<Value Type="Double">$Config/Threshold$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
<ConditionDetection ID="OverThresholdFilter" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Double">Value</XPathQuery>
</ValueExpression>
<Operator>Greater</Operator>
<ValueExpression>
<Value Type="Double">$Config/Threshold$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="UnderThreshold">
<Node ID="UnderThresholdFilter">
<Node ID="DataSource"/>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="OverThreshold">
<Node ID="OverThresholdFilter">
<Node ID="DataSource"/>
</Node>
</RegularDetection>
</RegularDetections>
</MonitorImplementation>
</UnitMonitorType>