Bağlama Çerçevesi İş Akışları

Microsoft.SystemCenter.ServiceManager.LfxWorkflows.Monitor (UnitMonitor)

Bağlama Çerçevesi İş Akışı İzleyicisi

Knowledge Base article:

Özet

Genelde Bağlama İş Akışı hataları aşağıdaki nedenlerden biri dolayısıyla meydana gelebilir. Etkin uyarılar görünümünde bu uyarıyla ilişkili bir uyarı vardır. Uyarı bilgileri hatanın nedenini gösterecektir.

Nedenler

1. Bağlama Çerçevesi İş Akışı Hiç Çalışmıyor : Bu uyarı, bağlayıcının oluşturulduğundan beri çalıştırılmadığını gösterir. Bağlayıcı devre dışı bırakılmış olabilir, Sağlık Hizmeti iş akışı üretmiyor olabilir veya bağlayıcı hatalı yapılandırılmıştır.

2. Bağlama Çerçevesi İş Akışı Hatalarla Sonlandı : Bağlama çerçevesi eşitlemeye yönelik bir hata belirledi. Çeşitli nedenleri olabilir, kesin neden kaynağa bağlıdır.

2. Bağlama Çerçevesi İş Akışı Bilinmeyen Durumda : Bağlama çerçevesi bağlayıcısı bilinmeyen bir durumda. İş akışının durumu iş akışı tarafından güncelleştirilmemiş.

Çözümlemeler

Bağlama Çerçevesi İş Akışı Hiç Çalışmıyor,

Bağlama Çerçevesi İş Akışı Hatalarla Sonlandı,

Bağlama Çerçevesi İş Akışı Bilinmeyen Durumda,

Element properties:

TargetMicrosoft.SystemCenter.ServiceManager.SmManagementServer
Parent MonitorMicrosoft.ServiceManager.Workflows.AvailabilityHealthRollup
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.ServiceManager.Workflows.OLEDB.Monitoring.DBProbeMonitorType
RemotableTrue
AccessibilityPublic
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.ServiceManager.LfxWorkflows.Monitor" TypeID="Microsoft.SystemCenter.ServiceManager.Workflows.OLEDB.Monitoring.DBProbeMonitorType" Accessibility="Public" Target="SM!Microsoft.SystemCenter.ServiceManager.SmManagementServer" ParentMonitorID="Microsoft.ServiceManager.Workflows.AvailabilityHealthRollup">
<Category>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState MonitorTypeStateID="State1" HealthState="Warning" ID="ComponentUnhealthy"/>
<OperationalState MonitorTypeStateID="State2" HealthState="Success" ID="ComponentHealthy"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>60</IntervalSeconds>
<SyncTime/>
<ConnectionString>Provider=SQLOLEDB;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>
declare @TableName sysname;
declare @StatusColumn sysname;
declare @StartTimeColumn sysname;
declare @Query varchar(max);
select @TableName = MT.ManagedTypeTableName,
@StatusColumn = MTP1.ColumnName,@StartTimeColumn = MTP2.ColumnName from ManagedType MT
inner join ManagedTypeProperty MTP1
on MT.ManagedTypeId = MTP1.ManagedTypeId
inner join ManagedTypeProperty MTP2
on MT.ManagedTypeId = MTP2.ManagedTypeId
where MT.TypeName = N'Microsoft.SystemCenter.LinkingFramework.SyncStatus'
and MTP1.ManagedTypePropertyName = N'Status'
and MTP2.ManagedTypePropertyName = N'LastRunStartTime'
SET @Query = N'select CONVERT(varchar,COUNT(*))' +
' from dbo.EnumType Etype join ' + @TableName +
' SyncStatus on Etype.EnumTypeId = SyncStatus.' + @StatusColumn +
' join dbo.Relationship Rel on Rel.TargetEntityId = SyncStatus.BaseManagedEntityId join dbo.BaseManagedEntity BME '+
'on BME.BaseManagedEntityId = Rel.SourceEntityId ' +
' WHERE (' + @StatusColumn + ' like ''%FinishedwithError%'') OR ' +
'(' + @StatusColumn + ' like ''%Unknown%'') OR ' +
'(' + @StatusColumn + ' like ''%NeverRun%'' AND ' +
'('+ ' DATEDIFF(MINUTE,' + @StartTimeColumn + ', GETUTCDATE()) &gt;= 5))'
EXEC(@Query)

</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>