Проверка количества заданий в очереди Runbook Worker.
Определяет превышение указанного порогового значения длины очереди заданий. Эта очередь хранится в базе данных Service Management Automation, поэтому для монитора необходимо настроить доступ к базе данных. Дополнительные сведения см. в разделе "Конфигурация".
Если длина очереди превышает критическое ограничение, компоненты Worker не смогут адекватно обрабатывать нагрузку заданий. Частота отправки заданий превышает скорость их обработки.
Увеличьте число ролей Worker.
Для правильной работы этого монитора ему требуется разрешение на чтение базы данных Service Management Automation. Создайте учетную запись запуска от имени, имеющую разрешения на чтение базы данных, и добавьте ее в профиль запуска от имени с именем "Учетная запись базы данных Microsoft Service Management Automation".
Для этого монитора можно настроить следующие параметры:
Параметр | Определение | По умолчанию |
Оповещение о состоянии | Состояние работоспособности для монитора, создавшего оповещение. | Монитор в критическом состоянии работоспособности |
Приоритет оповещения | Приоритет оповещений, созданных для этого монитора. | Средний |
Серьезность оповещений | Приоритет оповещений, созданных для этого монитора. | Критическое |
Автоматическое разрешение оповещения | Указывает, должно ли оповещение разрешаться автоматически, когда монитор возвращается в работоспособное состояние. | True |
Включено | Указывает на необходимость запуска монитора. | True |
ErrorThreshold | Число сообщений в очереди, которое вызывает критическое состояние работоспособности. | 20 |
Создает оповещение | Указывает, должен ли монитор создавать оповещение при переходе в критическое состояние или состояние предупреждения. | True |
Интервал | Интервал в секундах между запусками монитора. | 300 |
WarningThreshold | Число сообщений в очереди, которое вызывает состояние предупреждения работоспособности. | 10 |
Target | Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Server.Worker | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.MonitorType.MessageQueueLength | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Monitor.MessageQueueLength" Accessibility="Public" Enabled="true" Target="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Server.Worker" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.MonitorType.MessageQueueLength" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.ServiceManagementAutomation.2012R2.Monitor.MessageQueueLength.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
<OperationalState ID="OverWarningThreshold" MonitorTypeStateID="OverWarningThreshold" HealthState="Warning"/>
<OperationalState ID="OverErrorThreshold" MonitorTypeStateID="OverErrorThreshold" HealthState="Error"/>
</OperationalStates>
<Configuration>
<Interval>300</Interval>
<DatabaseServer>$Target/Property[Type="SMA!Microsoft.SystemCenter.ServiceManagementAutomation.Server"]/DatabaseServerName$</DatabaseServer>
<DatabaseInstance>$Target/Property[Type="SMA!Microsoft.SystemCenter.ServiceManagementAutomation.Server"]/DatabaseServerInstance$</DatabaseInstance>
<DatabaseName>$Target/Property[Type="SMA!Microsoft.SystemCenter.ServiceManagementAutomation.Server"]/DatabaseName$</DatabaseName>
<WarningThreshold>10</WarningThreshold>
<ErrorThreshold>20</ErrorThreshold>
</Configuration>
</UnitMonitor>