Squared Up EA Tcp probe monitor type

SquaredUp.EAM.Library.MonitorType.TcpMonitor.TcpProbeMonitorType (UnitMonitorType)

Monitors Tcp connectivity between two endpoints to the target port on a defined interval.

Element properties:

RunAsDefault
AccessibilityPublic
Support Monitor RecalculateTrue

Member Modules:

ID Module Type TypeId RunAs 
Scheduler DataSource System.Scheduler Default
Probe ProbeAction Microsoft.SystemCenter.SyntheticTransactions.TCPPortCheckProbe Default
CDConnectionFailed ConditionDetection System.ExpressionFilter Default
CDConnectionOk ConditionDetection System.ExpressionFilter Default

Overrideable Parameters:

IDParameterTypeSelectorDisplay NameDescription
TargetPortint$Config/TargetPort$Port Number
Intervalint$Config/Interval$Interval (Seconds)

Source Code:

<UnitMonitorType ID="SquaredUp.EAM.Library.MonitorType.TcpMonitor.TcpProbeMonitorType" Accessibility="Public">
<MonitorTypeStates>
<MonitorTypeState ID="ConnectionOk" NoDetection="false"/>
<MonitorTypeState ID="ConnectionFailed" NoDetection="false"/>
</MonitorTypeStates>
<Configuration>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TargetServerName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TargetPort" type="xsd:int"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Interval" type="xsd:int"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="TargetPort" ParameterType="int" Selector="$Config/TargetPort$"/>
<OverrideableParameter ID="Interval" ParameterType="int" Selector="$Config/Interval$"/>
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="Scheduler" TypeID="System!System.Scheduler">
<Scheduler>
<SimpleReccuringSchedule>
<Interval Unit="Seconds">$Config/Interval$</Interval>
</SimpleReccuringSchedule>
<ExcludeDates/>
</Scheduler>
</DataSource>
<ProbeAction ID="Probe" TypeID="Synth!Microsoft.SystemCenter.SyntheticTransactions.TCPPortCheckProbe">
<ServerName>$Config/TargetServerName$</ServerName>
<Port>$Config/TargetPort$</Port>
</ProbeAction>
<ConditionDetection ID="CDConnectionOk" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">StatusCode</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">0</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
<ConditionDetection ID="CDConnectionFailed" TypeID="System!System.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">StatusCode</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">0</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="ConnectionOk">
<Node ID="CDConnectionOk">
<Node ID="Probe">
<Node ID="Scheduler"/>
</Node>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="ConnectionFailed">
<Node ID="CDConnectionFailed">
<Node ID="Probe">
<Node ID="Scheduler"/>
</Node>
</Node>
</RegularDetection>
</RegularDetections>
<OnDemandDetections>
<OnDemandDetection MonitorTypeStateID="ConnectionOk">
<Node ID="CDConnectionOk">
<Node ID="Probe"/>
</Node>
</OnDemandDetection>
<OnDemandDetection MonitorTypeStateID="ConnectionFailed">
<Node ID="CDConnectionOk">
<Node ID="Probe"/>
</Node>
</OnDemandDetection>
</OnDemandDetections>
</MonitorImplementation>
</UnitMonitorType>