URLGenie Status Code Monitor

URLGenie.AutoOverride.StatusCode.Monitor (UnitMonitor)

Description for the new unit monitor.

Knowledge Base article:

Summary

Status code has exceeded the supplied criteria code

Causes

This can happen for a few reasons:

Resolutions

Try the following troubleshooting steps to attempt to fix the problem:

Element properties:

TargetURLGenie.HttpRequest.Standard
Parent MonitorURLGenie.Aggregate.Health.Monitor
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeURLGenie.AutoOverride.StatusCode.MT
RemotableTrue
AccessibilityPublic
Alert Message
HTTP Request Error: StatusCode Exceeded Threshold
StatusCode Exceeded Threshold
StatusCode: {0}

Monitor Settings:
URL: {1}
GroupID: {2}
ContentMatch: {3}
DNSResolutionTime: {4}
RetryCount: {5}
Wiki: {6}
Description: {7}

******* Request Headers *******
{8}
******* End Request Headers *******

******* Response Headers *******
{9}
******* End Response Headers *******
RunAsDefault

Source Code:

<UnitMonitor ID="URLGenie.AutoOverride.StatusCode.Monitor" Accessibility="Public" Enabled="true" Target="URLGenie.HttpRequest.Standard" ParentMonitorID="URLGenie.Aggregate.Health.Monitor" Remotable="true" Priority="Normal" TypeID="URLGenie.AutoOverride.StatusCode.MT" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="URLGenie.AutoOverride.StatusCode.Monitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/DataItem/RequestResults/RequestResult[@Id="1"]/BasePageData/StatusCode$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/URL$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/GroupID$</AlertParameter3>
<AlertParameter4>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/ContentMatch$</AlertParameter4>
<AlertParameter5>$Data/Context/RequestResults/RequestResult[@Id=1]/BasePageData/DNSResolutionTime$</AlertParameter5>
<AlertParameter6>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/RetryCount$</AlertParameter6>
<AlertParameter7>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Wiki$</AlertParameter7>
<AlertParameter8>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Description$</AlertParameter8>
<AlertParameter9>$Data/Context/RequestResults/RequestResult[@Id=1]/BasePageData/RequestHeaders$</AlertParameter9>
<AlertParameter10>$Data/Context/RequestResults/RequestResult[@Id=1]/BasePageData/ResponseHeaders$</AlertParameter10>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="CriteriaOK" MonitorTypeStateID="CriteriaOK" HealthState="Success"/>
<OperationalState ID="CriteriaError" MonitorTypeStateID="CriteriaError" HealthState="Error"/>
<OperationalState ID="CriteriaWarning" MonitorTypeStateID="CriteriaWarning" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<AuthenticationScheme>None</AuthenticationScheme>
<AuthPass>$RunAs[Name="URLGenie.Standard.Profile"]/Password$</AuthPass>
<AuthUser>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/AuthUser$</AuthUser>
<Body><Script>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Body$</Script></Body>
<CollectResponseBody>Never</CollectResponseBody>
<ContentMatch>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/ContentMatch$</ContentMatch>
<ContentMatchRegExOperator>DoesNotContainSubstring</ContentMatchRegExOperator>
<ErrorTime>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/ErrorTime$</ErrorTime>
<HeaderContentType>
<Name>Content-Type</Name>
<Value>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/HeaderContentType$</Value>
</HeaderContentType>
<Header1>
<Name>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Header1Name$</Name>
<Value>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Header1Value$</Value>
</Header1>
<Header2>
<Name>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Header2Name$</Name>
<Value>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Header2Value$</Value>
</Header2>
<Header3>
<Name>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Header3Name$</Name>
<Value>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Header3Value$</Value>
</Header3>
<Interval>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Interval$</Interval>
<ProxyAuthenticationScheme>None</ProxyAuthenticationScheme>
<ProxyPass>$RunAs[Name="URLGenie.Proxy.Profile"]/Password$</ProxyPass>
<Proxy>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/Proxy$</Proxy>
<ProxyUser>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/ProxyUser$</ProxyUser>
<ResponseTimeout>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/ResponseTimeout$</ResponseTimeout>
<RetryCount>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/RetryCount$</RetryCount>
<StatusThreshold>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/StatusThreshold$</StatusThreshold>
<URL>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/URL$</URL>
<UserAgent>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/UserAgent$</UserAgent>
<Verb>GET</Verb>
<WarningTime>$Target/Property[Type="URLGenie.HttpRequest.Seed"]/WarningTime$</WarningTime>
</Configuration>
</UnitMonitor>