Consente di controllare il numero di processi nella coda di Runbook Worker.
Determina se la lunghezza della coda del processo ha superato la soglia predefinita. La coda viene archiviata nel database di Service Management Automation, pertanto è necessario configurare l'accesso del monitoraggio al database. Per ulteriori informazioni, vedere la sezione Configurazione.
Se la lunghezza della coda del processo raggiunge il limite critico, i Worker non saranno in grado di gestire in modo adeguato il carico del processo. La frequenza di invio dei processi è superiore alla frequenza di elaborazione dei processi.
Aumentare il numero di ruoli del Worker.
Per funzionare nel modo corretto, il monitoraggio deve disporre delle autorizzazioni di lettura del database di Service Management Automation. Creare un account RunAs con autorizzazioni di lettura del database e aggiungerlo al profilo RunAs denominato Account database di Microsoft Service Management Automation.
Nel monitoraggio è possibile configurare le opzioni seguenti:
Opzione | Definizione | Impostazioni predefinite |
Avviso stato | Stato di integrità per il monitoraggio che genera un avviso. | Il monitoraggio è in stato di integrità critico |
Priorità avviso | Priorità dell'avviso generato per il monitoraggio. | Media |
Gravità avviso | Priorità dell'avviso generato per il monitoraggio. | Critica |
Risoluzione automatica avviso | Specifica se l'avviso deve essere risolto automaticamente quando il monitoraggio torna in uno stato integro. | Vero |
Abilitato | Specifica se il monitoraggio deve essere eseguito. | Vero |
ErrorThreshold | Numero di messaggi nella coda che genera uno stato di integrità critico. | 20 |
Genera avviso | Specifica se il monitoraggio deve generare un avviso quando passa da uno stato di avviso a uno stato critico. | Vero |
Intervallo | Numero di secondi tra le esecuzioni del monitoraggio. | 300 |
WarningThreshold | Numero di messaggi nella coda che genera uno stato di integrità di avviso. | 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>