Event Monitor - Correlated event with Timer
System.ApplicationLog.HTTPErrorLog.CorrelatedEventTimer2StateMonitorType (UnitMonitorType)
Two states monitor, associate to correlated event and timer.
Element properties:
Member Modules:
Source Code:
<UnitMonitorType ID="System.ApplicationLog.HTTPErrorLog.CorrelatedEventTimer2StateMonitorType" Accessibility="Public">
<MonitorTypeStates>
<MonitorTypeState ID="CorrelatedEventRaised"/>
<MonitorTypeState ID="TimerEventRaised"/>
</MonitorTypeStates>
<Configuration>
<IncludeSchemaTypes>
<SchemaType>System!System.ExpressionEvaluatorSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element name="FirstCorrelatedLogFileDirectory" type="xsd:string"/>
<xsd:element name="FirstCorrelatedExpression" type="ExpressionType"/>
<xsd:element name="SecondCorrelatedLogFileDirectory" type="xsd:string"/>
<xsd:element name="SecondCorrelatedExpression" type="ExpressionType"/>
<xsd:element name="Correlator" type="CorrelatorType"/>
<xsd:element name="TimerWaitInSeconds" type="xsd:integer"/>
</Configuration>
<MonitorImplementation>
<MemberModules>
<DataSource TypeID="System.ApplicationLog.HTTPErrorLogReader" ID="FirstCorrelatedDataSource">
<LogFileDirectory>$Config/FirstCorrelatedLogFileDirectory$</LogFileDirectory>
</DataSource>
<DataSource TypeID="System.ApplicationLog.HTTPErrorLogReader" ID="SecondCorrelatedDataSource">
<LogFileDirectory>$Config/SecondCorrelatedLogFileDirectory$</LogFileDirectory>
</DataSource>
<ProbeAction TypeID="System!System.PassThroughProbe" ID="OnDemandReset"/>
<ConditionDetection TypeID="System!System.ExpressionFilter" ID="FirstCorrelatedFilterCondition">
<Expression>$Config/FirstCorrelatedExpression$</Expression>
</ConditionDetection>
<ConditionDetection TypeID="System!System.ExpressionFilter" ID="SecondCorrelatedFilterCondition">
<Expression>$Config/SecondCorrelatedExpression$</Expression>
</ConditionDetection>
<ConditionDetection TypeID="System!System.CorrelatorAutoCondition" ID="CorrelatedDataCondition">
<Correlator>$Config/Correlator$</Correlator>
</ConditionDetection>
<ConditionDetection TypeID="System!System.TimerCondition" ID="TimerCondition">
<TimerWaitInSeconds>$Config/TimerWaitInSeconds$</TimerWaitInSeconds>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="CorrelatedEventRaised">
<Node ID="CorrelatedDataCondition">
<Node ID="FirstCorrelatedFilterCondition">
<Node ID="FirstCorrelatedDataSource"/>
</Node>
<Node ID="SecondCorrelatedFilterCondition">
<Node ID="SecondCorrelatedDataSource"/>
</Node>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="TimerEventRaised">
<Node ID="TimerCondition">
<Node ID="CorrelatedDataCondition">
<Node ID="FirstCorrelatedFilterCondition">
<Node ID="FirstCorrelatedDataSource"/>
</Node>
<Node ID="SecondCorrelatedFilterCondition">
<Node ID="SecondCorrelatedDataSource"/>
</Node>
</Node>
</Node>
</RegularDetection>
</RegularDetections>
<OnDemandDetections>
<OnDemandDetection MonitorTypeStateID="TimerEventRaised">
<Node ID="OnDemandReset"/>
</OnDemandDetection>
</OnDemandDetections>
</MonitorImplementation>
</UnitMonitorType>