BizTalk Host Configuration Availability Monitor Type

Microsoft.BizTalk.Server.2013.HostConfiguration.AvailabilityMonitor (UnitMonitorType)

This is the BizTalk host configuration availability monitor type used for monitoring availability of BizTalk hosts.

Element properties:

RunAsDefault
AccessibilityPublic
Support Monitor RecalculateTrue

Member Modules:

ID Module Type TypeId RunAs 
ScriptDS DataSource Microsoft.BizTalk.Server.2013.Monitor.HostConfiguration.DataSource Default
OnDemandReset ProbeAction System.PassThroughProbe Default
FilterNotRunning ConditionDetection System.ExpressionFilter Default
FilterRunning ConditionDetection System.ExpressionFilter Default
FilterWarning ConditionDetection System.ExpressionFilter Default
MapperNotRunning ConditionDetection System.Performance.DataGenericMapper Default
MapperRunning ConditionDetection System.Performance.DataGenericMapper Default
MapperWarning ConditionDetection System.Performance.DataGenericMapper Default

Overrideable Parameters:

IDParameterTypeSelectorDisplay NameDescription
IntervalSecondsint$Config/IntervalSeconds$Interval SecondsThis is the interval (in seconds) at which the monitor is run.
SuccessLimitint$Config/SuccessLimit$Success LimitMonitor state is success if the number of host instances running for this host is equal to or greater than this value.
WarningLimitint$Config/WarningLimit$Warning LimitMonitor state is warning if the number of host instances is less than success limit and equal to or greater than this value. Monitor state is error if the number of host instances is less than this value.
LogSuccessEventbool$Config/LogSuccessEvent$Log Success EventAn event is logged based on successful completion of the monitor when value is set to 'true'.
TimeoutSecondsint$Config/TimeoutSeconds$Timeout SecondsThis is the timeout (in seconds) after which execution of the monitor is terminated if not yet completed.

Source Code:

<UnitMonitorType ID="Microsoft.BizTalk.Server.2013.HostConfiguration.AvailabilityMonitor" Accessibility="Public">
<MonitorTypeStates>
<MonitorTypeState ID="SuccessState" NoDetection="false"/>
<MonitorTypeState ID="WarningState" NoDetection="false"/>
<MonitorTypeState ID="ErrorState" NoDetection="false"/>
</MonitorTypeStates>
<Configuration>
<xsd:element name="IntervalSeconds" type="xsd:int"/>
<xsd:element name="ArtifactName" type="xsd:string"/>
<xsd:element name="TargetComputerName" type="xsd:string"/>
<xsd:element name="SuccessLimit" type="xsd:int"/>
<xsd:element name="WarningLimit" type="xsd:int"/>
<xsd:element name="LogSuccessEvent" type="xsd:boolean"/>
<xsd:element name="TimeoutSeconds" type="xsd:int"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="IntervalSeconds" Selector="$Config/IntervalSeconds$" ParameterType="int"/>
<OverrideableParameter ID="SuccessLimit" Selector="$Config/SuccessLimit$" ParameterType="int"/>
<OverrideableParameter ID="WarningLimit" Selector="$Config/WarningLimit$" ParameterType="int"/>
<OverrideableParameter ID="LogSuccessEvent" Selector="$Config/LogSuccessEvent$" ParameterType="bool"/>
<OverrideableParameter ID="TimeoutSeconds" Selector="$Config/TimeoutSeconds$" ParameterType="int"/>
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="ScriptDS" TypeID="Microsoft.BizTalk.Server.2013.Monitor.HostConfiguration.DataSource">
<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>
<TargetComputerName>$Config/TargetComputerName$</TargetComputerName>
<SuccessLimit>$Config/SuccessLimit$</SuccessLimit>
<WarningLimit>$Config/WarningLimit$</WarningLimit>
<LogSuccessEvent>$Config/LogSuccessEvent$</LogSuccessEvent>
<TimeoutSeconds>$Config/TimeoutSeconds$</TimeoutSeconds>
</DataSource>
<ProbeAction ID="OnDemandReset" TypeID="System!System.PassThroughProbe"/>
<ConditionDetection ID="FilterRunning" TypeID="System!System.ExpressionFilter">
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>Property[@Name='$Config/ArtifactName$/State']</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>2</Pattern>
</RegExExpression>
</Expression>
</ConditionDetection>
<ConditionDetection ID="FilterWarning" TypeID="System!System.ExpressionFilter">
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>Property[@Name='$Config/ArtifactName$/State']</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>1</Pattern>
</RegExExpression>
</Expression>
</ConditionDetection>
<ConditionDetection ID="FilterNotRunning" TypeID="System!System.ExpressionFilter">
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>Property[@Name='$Config/ArtifactName$/State']</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>0</Pattern>
</RegExExpression>
</Expression>
</ConditionDetection>
<ConditionDetection ID="MapperRunning" TypeID="Perf!System.Performance.DataGenericMapper">
<ObjectName>Host Configuration</ObjectName>
<CounterName>State</CounterName>
<InstanceName>$Config/ArtifactName$</InstanceName>
<Value>2</Value>
</ConditionDetection>
<ConditionDetection ID="MapperWarning" TypeID="Perf!System.Performance.DataGenericMapper">
<ObjectName>Host Configuration</ObjectName>
<CounterName>State</CounterName>
<InstanceName>$Config/ArtifactName$</InstanceName>
<Value>1</Value>
</ConditionDetection>
<ConditionDetection ID="MapperNotRunning" TypeID="Perf!System.Performance.DataGenericMapper">
<ObjectName>Host Configuration</ObjectName>
<CounterName>State</CounterName>
<InstanceName>$Config/ArtifactName$</InstanceName>
<Value>0</Value>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="SuccessState">
<Node ID="MapperRunning">
<Node ID="FilterRunning">
<Node ID="ScriptDS"/>
</Node>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="WarningState">
<Node ID="MapperWarning">
<Node ID="FilterWarning">
<Node ID="ScriptDS"/>
</Node>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="ErrorState">
<Node ID="MapperNotRunning">
<Node ID="FilterNotRunning">
<Node ID="ScriptDS"/>
</Node>
</Node>
</RegularDetection>
</RegularDetections>
<OnDemandDetections>
<OnDemandDetection MonitorTypeStateID="SuccessState">
<Node ID="OnDemandReset"/>
</OnDemandDetection>
</OnDemandDetections>
</MonitorImplementation>
</UnitMonitorType>