Application availability test using a TCP connection test.
Application availability test using a TCP connection to a user specified port.
A failure in this monitor indicates that the specified port may be:
Unavailable from one or more locations.
Responding poorly.
Consult with the application team to resolve this alert.
Target | SquaredUp.EAM.Library.Class.AvailabilityMonitoring.Watcher.TCP | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | SquaredUp.EAM.Library.MonitorType.AvailabilityMonitoring.PowerShellScript | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | SquaredUp.EAM.Library.SecureReference.AvailabilityMonitoring.TCP |
<UnitMonitor ID="SquaredUp.EAM.Library.Monitor.AvailabilityMonitoring.TCP" Accessibility="Public" Enabled="true" Target="SquaredUp.EAM.Library.Class.AvailabilityMonitoring.Watcher.TCP" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="SquaredUp.EAM.Library.MonitorType.AvailabilityMonitoring.PowerShellScript" ConfirmDelivery="false" RunAs="SquaredUp.EAM.Library.SecureReference.AvailabilityMonitoring.TCP">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="SquaredUp.EAM.Library.Monitor.AvailabilityMonitoring.TCP.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='Description']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="SuccessCondition" MonitorTypeStateID="SuccessCondition" HealthState="Success"/>
<OperationalState ID="WarningCondition" MonitorTypeStateID="WarningCondition" HealthState="Warning"/>
<OperationalState ID="ErrorCondition" MonitorTypeStateID="ErrorCondition" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>120</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>120</TimeoutSeconds>
<ConfigurationJson>$Target/Property[Type="SquaredUp.EAM.Library.Class.AvailabilityMonitoring.Watcher"]/ConfigurationJson$</ConfigurationJson>
<Script>if ($PSVersionTable.PSVersion.Major -lt 4) {
return New-Object -TypeName PSobject -Property (@{'Success'=$false;'Description'='TCP monitoring is only available from nodes running PowerShell v4 or later.'})
} else {
$testResult = Test-NetConnection -ComputerName $config.address -Port $config.port
return $testResult.TcpTestSucceeded
}
</Script>
<ResponseTimeThreshold>$Target/Property[Type="SquaredUp.EAM.Library.Class.AvailabilityMonitoring.Watcher"]/ResponseTimeThreshold$</ResponseTimeThreshold>
</Configuration>
</UnitMonitor>