(Не рекомендуется) Число дескрипторов байт исключительного пользования узла, выполняющего слежение (не рекомендуется)

Microsoft.SystemCenter.ManagementServer.MonitoringHost.PrivateBytesThreshold (Rule)

Перезапуск службы работоспособности, если для процесса MonitoringHost превышено пороговое значение "Процесс\Байт исключительного пользования".

Knowledge Base article:

Сводка

Это правило отключено по умолчанию, так как заменено монитором.

Это правило отвечает за отслеживание использования счетчика "Процесс\Байт исключительного пользования" для всех экземпляров процесса MonitoringHost.exe. Если данный показатель превышает настроенное пороговое значение, создается предупреждение.

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

Роль службы работоспособности управления System Center

Пороговое значение счетчика "Байт исключительного пользования"

Агент

100 МБ

Сервер управления

1500 МБ

Ниже указана конфигурация реакции, в ходе которой предпринимается попытка перезапустить службу работоспособности управления System Center:

Роль службы работоспособности управления System Center

Режим ответа с перезапуском

Агент

Включен

Сервер управления

Ответный перезапуск не выполняется

Причины

Краткая сводка потенциальных причин:

Загружено слишком много правил и мониторов из всех пакетов управления, настроенных в этой службе работоспособности управления System Center.

Неправильно настроенное правило или монитор, собирающие или обрабатывающие слишком много данных (например правило сбора показаний счетчика производительности собирает данные каждую секунду)

Это может быть вызвано тем, что служба работоспособности управления System Center обслуживает слишком много пакетов управления. Каждый пакет управления может содержать значительное количество средств мониторинга при небольшом количестве используемых ресурсов. При большом числе пакетов управления количество правил и мониторов может доходить до нескольких тысяч. При этом каждый экземпляр MonitoringHost.exe может начать потреблять больше ресурсов.

Возможно, такая ситуация ожидаема для этой службы работоспособности управления System Center и связана с типом выполняемого ею мониторинга.

Другая причина может заключаться в том, что одно или несколько правил и мониторов не настроены оптимальным образом. Например, правило счетчика производительности, по которому попытки сбора данных производительности предпринимаются каждую секунду. Большое число настроенных таким образом правил и мониторов приводит к тому, что процесс MonitoringHost.exe начинает потреблять больше ресурсов.

Решения

Действие по умолчанию для данного правила, выполняющегося на серверах управления, — создание предупреждения.

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

Если служба работоспособности управления System Center и связанный с ней процесс MonitoringHost.exe все еще потребляют слишком много ресурсов, можно перезапустить эту службу в Windows, чтобы смягчить последствия этой проблемы.

Element properties:

TargetMicrosoft.SystemCenter.ManagementServer
CategoryMaintenance
EnabledFalse
Instance NameProcess
Counter NamePrivate Bytes
Frequency120
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
Предупреждение о достижении порогового значения байт исключительного пользования узла, выполняющего слежение (сервер управления)
Предупреждение о достижении порогового значения байт исключительного пользования узла, выполняющего слежение

Member Modules:

ID Module Type TypeId RunAs 
DataSource DataSource System.Performance.DataProvider Default
CDAveragerThreshold ConditionDetection System.Performance.AverageThresholdCondition Default
Alert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SystemCenter.ManagementServer.MonitoringHost.PrivateBytesThreshold" Enabled="false" Target="SCLibrary!Microsoft.SystemCenter.ManagementServer" ConfirmDelivery="false" Remotable="true" Priority="High" DiscardLevel="100">
<Category>Maintenance</Category>
<DataSources>
<DataSource ID="DataSource" TypeID="Performance!System.Performance.DataProvider">
<CounterName>Private Bytes</CounterName>
<ObjectName>Process</ObjectName>
<InstanceName>MonitoringHost*</InstanceName>
<Frequency>120</Frequency>
</DataSource>
</DataSources>
<ConditionDetection ID="CDAveragerThreshold" TypeID="Performance!System.Performance.AverageThresholdCondition">
<NumSamples>5</NumSamples>
<Threshold>1610612736</Threshold>
<Operator>Greater</Operator>
</ConditionDetection>
<WriteActions>
<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.SystemCenter.ManagementServer.MonitoringHost.PrivateBytesThreshold.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/InstanceName$</AlertParameter1>
<AlertParameter2>$Data/Value$</AlertParameter2>
</AlertParameters>
<Suppression>
<SuppressionValue>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>