BeanSpy

Microsoft.JEE.Deep.AvailabilityHealth.UnitMonitor (UnitMonitor)

Базовый монитор, предназначенный для сложного мониторинга сервера приложений

Knowledge Base article:

Краткое описание

Сложный монитор индекса доступности обеспечивает дополнительные возможности мониторинга помимо основных функций мониторинга доступности. Сложный монитор проверяет, принимает ли сервер приложений HTTP-запросы и отвечает ли он на них. Мониторинг осуществляется путем проверки возможности агента отправлять вызовы на страницу статистики BeanSpy.

Причины

Неработоспособное состояние указывает на то, что сложному монитору не удалось установить подключение к BeanSpy. Ниже перечислены возможные причины такого поведения.

Решения

Убедитесь, что приложение BeanSpy развернуто и запущено с помощью консоли администрирования сервера приложений. Затем, убедитесь в том, что брандмауэр не блокирует порт и для учетной записи запуска от имени предоставлены подходящие учетные данные пользователя.

Чтобы вручную проверить подключение к BeanSpy, откройте браузер и перейдите на страницу статистики:

Element properties:

TargetMicrosoft.JEE.ApplicationServer.Monitored.Instance
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.JEE.Deep.AvailabilityHealth.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Потеряно подключение к серверу приложений
Потеряно подключение службы работоспособности к BeanSpy на порту {2} к компьютеру {1} для ИД сервера приложений "{0}".
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.JEE.Deep.AvailabilityHealth.UnitMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.JEE.ApplicationServer.Monitored.Instance" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.JEE.Deep.AvailabilityHealth.MonitorType" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.JEE.Deep.AvailabilityHealth.UnitMonitor_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<!-- The alert description should include key properties of: -->
<!-- * the deep monitored application server ID -->
<!-- * the deep monitored application server hostname -->
<!-- * the deep monitored application server port -->
<AlertParameter1>$Target/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Id$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/HostName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Port$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Available" MonitorTypeStateID="Available" HealthState="Success"/>
<OperationalState ID="Unavailable" MonitorTypeStateID="Unavailable" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/HostName$</ComputerName>
<Protocol>$Target/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Protocol$</Protocol>
<Port>$Target/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Port$</Port>
<BaseURL/>
<URLSuffix/>
<IntervalSeconds>900</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>