Monitor de Fluxos de Trabalho de Arquitetura de Ligação
Normalmente, as falhas de fluxos de trabalho de limpeza devem-se a um dos seguintes motivos. A vista de alertas ativos terá um alerta associado a esta falha. O conhecimento do alerta indicará a causa específica da falha.
1. Falha no fluxo de trabalho de limpeza: As falhas do fluxo de trabalho indicam que este se deparou com um problema que o levou a deixar de funcionar. Geralmente, os fluxos de trabalho com falha pressupõem que o problema é conhecido.
Os fluxos de trabalho podem falhar por variados motivos, como problemas de conectividade da base de dados, problemas de direitos da base de dados ou ao facto de o servidor da base de dados estar em baixo.
2. Tempo Limite de Fluxo de Trabalho de Limpeza Excedido: Se um fluxo de trabalho não concluir uma atividade em 25 minutos, é atingido o tempo limite. A exceção é o fluxo de trabalho de registo de subscrição de limpeza que expirará ao fim de 15 minutos.
O tempo limite dos fluxos de trabalho pode ser excedido devido a variados motivos, como a execução quando um serviço é reiniciado, uma fila comprida ou APIs cuja devolução esteja a demorar muito tempo.
Em caso de falha do fluxo de trabalho de limpeza,
Procure informações detalhadas sobre a falha, bem como orientação para a resolução, no registo de eventos.
Em caso de tempo limite de fluxo de trabalho de limpeza excedido,
Poderá dever-se a um problema com a base de dados. Procure informações detalhadas sobre a falha, bem como orientação para a resolução, no registo de eventos.
Target | Microsoft.SystemCenter.ServiceManager.SmManagementServer | ||
Parent Monitor | Microsoft.ServiceManager.Workflows.AvailabilityHealthRollup | ||
Category | StateCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | High | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SystemCenter.ServiceManager.Workflows.OLEDB.Monitoring.DBProbeMonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.ServiceManager.GroomingWorkflows.Monitor" Accessibility="Public" Enabled="true" Target="SM!Microsoft.SystemCenter.ServiceManager.SmManagementServer" ParentMonitorID="Microsoft.ServiceManager.Workflows.AvailabilityHealthRollup" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.ServiceManager.Workflows.OLEDB.Monitoring.DBProbeMonitorType" ConfirmDelivery="false">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.ServiceManager.GroomingWorkflows.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>High</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ComponentUnhealthy" MonitorTypeStateID="State1" HealthState="Warning"/>
<OperationalState ID="ComponentHealthy" MonitorTypeStateID="State2" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>60</IntervalSeconds>
<SyncTime/>
<ConnectionString>Provider=SQLNCLI11;Server=$Target/Property[Type='SM!Microsoft.SystemCenter.ServiceManager.SmManagementServer']/SmDbHostName$;Database=$Target/Property[Type='SM!Microsoft.SystemCenter.ServiceManager.SmManagementServer']/SMDbName$;Integrated Security=SSPI</ConnectionString>
<Query>
SELECT COUNT(*)
FROM dbo.InternalJobHistory Job,
(SELECT max(timestarted) as LastTime, command
FROM dbo.InternalJobHistory
GROUP BY command) GroupJob
WHERE job.Command = GroupJob.Command
AND job.TimeStarted= GroupJob.LastTime
AND (
(job.StatusCode = '0' AND (DATEDIFF(MINUTE, job.TimeStarted , GETUTCDATE()) >= 25)) OR
(job.StatusCode = '0' AND (DATEDIFF(MINUTE, job.TimeStarted , GETUTCDATE()) >= 15) AND job.Command like '%Subscription%') OR
job.StatusCode ='2'
)
</Query>
<State1Filter>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Columns/Column[1]</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">0</Value>
</ValueExpression>
</SimpleExpression>
</State1Filter>
<State2Filter>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Columns/Column[1]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">0</Value>
</ValueExpression>
</SimpleExpression>
</State2Filter>
</Configuration>
</UnitMonitor>