Монитор производительности подтверждения подписок на предупреждения

Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.AcknowledgementPerformanceMonitor (UnitMonitor)

Монитор пороговых значений производительности "Подтверждения модуля источников данных подписок на предупреждения".

Knowledge Base article:

Сводка

Создание уведомлений задерживается из-за перегруженных ресурсов, из-за чего создание подтверждений уведомлений занимает больше времени, чем ожидалось. Подтверждения получаются при создании подсистемой уведомлений сообщений уведомлений на основе подписки. Подтверждения являются причиной увеличения длительности периода определения общего снижения производительности подсистемы.

Причины

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

1. Лавины предупреждений — предупреждений создано намного больше, чем может быть обработано сервером уведомлений за разумный период времени.

2. База данных Operations перегружена, что вызывало общее замедление всей системы.

Подтверждения уведомлений могут стать причиной снижения производительности из-за перегрузки пула ресурсов уведомлений и сервера управления, на котором установлена подсистема уведомлений. Возможно нагрузка базы данных Operations слишком велика или количество доступных ресурсов слишком мало.

Если данные предупреждения возникли во время установки хранилища данных и компонентов создания отчетов или сразу после установки, то их наиболее вероятной причиной является открытие потока предупреждений и переходов состояний в хранилище. При этом соответствующие структуры данных еще не содержатся в хранилище, так как его компоненты на этот момент еще не развернуты. Развертывание выполняется в течение порядка 30 минут после начала установки.

До выполнения развертывания данные для записи в хранилище будут храниться в рабочих процессах предупреждений и синхронизации состояний. Таким образом, эти рабочие процессы не возвращают данные в источники, что в свою очередь вызывает появление описываемых предупреждений. После завершения развертывания выполняется запись данных, и предупреждения автоматически удаляются.

Если предупреждения не разрешаются автоматически в течение 120 минут с момента установки хранилища данных, существует другая проблема.

Решения

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

1. Проверьте наличие недавно созданных предупреждений в представлении "Предупреждения". Если создается слишком много предупреждений, определите основную причину их возникновения и устраните ее.

2. Если не удается остановить создание предупреждений, отключите создание предупреждений в данном мониторе, пока не установится скорость создания предупреждений, которую можно контролировать.

3. Если все уведомления относятся к одному и тому же предупреждению, определите подписку, вызвавшую данное уведомление и отключите ее. Идентификатор подписки, отвечающей за данное уведомление, обычно указывается в теле сообщения уведомления.

4. Возможно, перегружена база данных Operations или компьютера, на котором она размещена. Выполните процедуру диагностики базы данных Operations, чтобы определить, можно ли устранить эти неполадки.

Element properties:

TargetMicrosoft.SystemCenter.AlertNotificationSubscriptionServer
Parent MonitorMicrosoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.Rollup
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityHigh
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Превышение длительности ожидаемого периода подтверждения модуля источников данных подписок на предупреждения.
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.AcknowledgementPerformanceMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.SystemCenter.AlertNotificationSubscriptionServer" ParentMonitorID="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.Rollup" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.AcknowledgementPerformanceMonitorMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>High</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="AlertSubscriptionDataSourceAcknowledgementsRunningSlow" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="AlertSubscriptionDataSourceAcknowledgementsRunningNormal" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>.</FirstComputerName>
<FirstLogName>Operations Manager</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Integer">11411</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service Modules</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>.</SecondComputerName>
<SecondLogName>Operations Manager</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Integer">11412</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service Modules</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>