Umbral de Bytes privados de host de supervisión

Microsoft.SystemCenter.Agent.MonitoringHost.PrivateBytesThreshold (UnitMonitor)

Este monitor garantiza que el contador "Proceso\Bytes privados" para los procesos MonitoringHost.exe no supere un umbral establecido sobre una serie de muestras consecutivas. Si se cumplen las condiciones, este monitor cambiará a un estado crítico, que se acumulará al monitor "Estado del servicio de mantenimiento". El monitor "Estado del servicio de mantenimiento" está configurado para ejecutar una recuperación cuando su estado es crítico, que intentará reiniciar automáticamente el servicio de mantenimiento.

Knowledge Base article:

Resumen

Esta regla mide el uso del Proceso\Bytes privados para todas las instancias del proceso MonitoringHost.exe. Si supera el umbral configurado, la respuesta intenta reiniciar el servicio de mantenimiento para asegurarse de que no continúe sobrecargando el equipo.

Hay distintos umbrales según la función que el servicio de mantenimiento tenga configurada para realizar. A continuación se resumen los umbrales predeterminados:

Función del servicio de mantenimiento

Umbral de bytes privados

Agente

300 MB

Servidor de administración

1.500 MB

A continuación, se detalla la configuración de la respuesta que intenta reiniciar el servicio de mantenimiento:

Función del servicio de mantenimiento

Comportamiento de respuesta de reinicio

Agente

Habilitada

Servidor de administración

Sin respuesta de reinicio

Causas

Un breve resumen de las posibles causas incluye:

Se han cargado demasiadas reglas o monitores desde todos los módulos de administración con que está configurado este servicio de mantenimiento.

Hay una regla o un monitor mal configurados que está recopilando o procesando demasiados datos (p. ej., la regla de recopilación del contador de rendimiento recopila datos cada segundo)

Esto puede deberse a que el servicio de mantenimiento está ejecutando demasiados módulos de administración. Cada módulo de administración puede tener muchos procesos de supervisión que usan una pequeña cantidad de recursos. Debido a la cantidad de módulos de administración que se suman a los varios miles de reglas y monitores, cada instancia de MonitoringHost.exe puede empezar a consumir más recursos.

Esto se puede esperar en el caso de este servicio de mantenimiento según el tipo de supervisión que realice el servicio de mantenimiento.

Otra causa puede ser que una o más reglas y monitores no se ajusten a algunas prácticas recomendadas. Por ejemplo, una regla de contador de rendimiento que intenta recopilar datos de rendimiento cada segundo. Si hay demasiadas reglas o monitores configurados de esta forma, el proceso monitoring host.exe consumirá más recursos.

Soluciones

La acción predeterminada para esta regla que se ejecuta en agentes es reiniciar el servicio de mantenimiento. Debido a que esta recuperación está habilitada de forma predeterminada en los agentes, no se requiere ninguna acción del usuario.

Tenga en cuenta que puede que el servicio de mantenimiento no se reinicie correctamente si la cuenta de acción con la que se ha configurado este agente no tiene los permisos adecuados para reiniciar el servicio.

En tal caso, inicie el servicio de Windows Servicio de mantenimiento.

Si cree que el uso de recursos es el adecuado para el nivel de supervisión que está realizando este agente, puede invalidar el umbral o deshabilitar la regla.

Element properties:

TargetMicrosoft.SystemCenter.Agent
Parent MonitorMicrosoft.SystemCenter.HealthService.ServiceStateRollup
CategoryPerformanceHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.Agent.Performance.ConsecutiveSamplesThreshold.MonitorType
RemotableFalse
AccessibilityPublic
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.Agent.MonitoringHost.PrivateBytesThreshold" Accessibility="Public" Enabled="true" Target="SCLibrary!Microsoft.SystemCenter.Agent" ParentMonitorID="Microsoft.SystemCenter.HealthService.ServiceStateRollup" Remotable="false" Priority="High" TypeID="Microsoft.SystemCenter.Agent.Performance.ConsecutiveSamplesThreshold.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<OperationalStates>
<OperationalState ID="PrivateBytesUnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
<OperationalState ID="PrivateBytesOverThreshold" MonitorTypeStateID="OverThreshold" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<ObjectName>Process</ObjectName>
<CounterName>Private Bytes</CounterName>
<InstanceName>MonitoringHost*</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>120</Frequency>
<NumSamples>5</NumSamples>
<Threshold>314572800</Threshold>
<Direction>greater</Direction>
</Configuration>
</UnitMonitor>