Monitor voor Linking Framework-werkstromen
Fouten in de Linking Framework-werkstromen hebben meestal de volgende oorzaken: In de weergave met actieve waarschuwingen wordt een waarschuwing voor deze fout vermeld. In de informatie over de waarschuwing wordt aangegeven wat de specifieke oorzaak van de fout is.
1. De Linking Framework-werkstroom is nooit uitgevoerd: Deze waarschuwing geeft aan dat de connector niet is uitgevoerd sinds deze is gemaakt. Mogelijk is de connector uitgeschakeld, worden met Health Service geen werkstromen gegenereerd of is de connector onjuist geconfigureerd.
2. De Linking Framework-werkstroom is voltooid met fouten: Er is voor de Linking Framework-connector een fout opgetreden bij de synchronisatie. Dit kan verschillende oorzaken hebben en de specifieke oorzaak is afhankelijk van de bron.
2. Onbekende status voor de Linking Framework-werkstroom: De Linking Framework-connector heeft een onbekende status. De werkstroomstatus is niet bijgewerkt door de werkstroom.
Als de Linking Framework-werkstroom nooit is uitgevoerd,
Controleer via de Service Manager-console of de connector is ingeschakeld.
Controleer de configuraties van de connector, beschikbaarheid van de server, machtigingen, planning, enzovoort. Bekijk in het gebeurtenislogboek de gedetailleerde informatie en aanwijzingen.
Start Health Service op de beheerserver waarop de werkstromen moeten worden uitgevoerd opnieuw en controleer het Operations Manager-gebeurtenislogboek op fouten met de Lfx-service.
Als de Linking Framework-werkstroom is voltooid met fouten,
Controleer het Operations Manager-gebeurtenislogboek op de Service Manager-beheerserver op fouten met de Lfx-service. In de foutbeschrijving worden de problemen met de werkstroom beschreven.
Als de Linking Framework-werkstroom een onbekende status heeft,
Probeer de connector opnieuw uit te voeren vanaf de Service Manager-console.
Target | Microsoft.SystemCenter.ServiceManager.SmManagementServer |
Parent Monitor | Microsoft.ServiceManager.Workflows.AvailabilityHealthRollup |
Category | AvailabilityHealth |
Enabled | True |
Alert Generate | False |
Alert Auto Resolve | True |
Monitor Type | Microsoft.SystemCenter.ServiceManager.Workflows.OLEDB.Monitoring.DBProbeMonitorType |
Remotable | True |
Accessibility | Public |
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.ServiceManager.LfxWorkflows.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>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState ID="ComponentUnhealthy" MonitorTypeStateID="State1" HealthState="Warning"/>
<OperationalState ID="ComponentHealthy" MonitorTypeStateID="State2" HealthState="Success"/>
</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()) >= 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>