Early feedback on Service Manager Beta 1 has highlighted that many folks would like more information around administration of connectors, especially on how to track the progress of a connector.
First, I would like to point out some of the tasks available for Service Manager Beta 1 for a connector:
The Sync Now task initiates an on-demand data sync for a connector. However, contrary to what you might think, this sync will not be completed immediately as there are often many underlying processes that are involved with a connector sync. I will touch more on the details around connector syncs later on in this post.
The Delete Connector task will do a couple of things, one of which may be surprising. First the connector is deleted and removed from the Service Manager database. What may be a surprise to you is that deletion of a connector will also delete any Configuration Items (CIs) it created, unless those CIs were also updated by another data source. This capability can be very convenient if you need to remove a lot of data from the Service Manager CMDB.
The Disable task will prevent future connector syncs from happening for a particular connector. In-progress syncs will complete even after this task is used.
The Enable task will re-enable a disabled connector and in Beta 1 at least, this will also initiate an immediate connector sync.
The Edit Connector task will pop-up a property dialog for the connector.
As I mentioned above, each data sync for a connector is actually comprised of a number of smaller processes that actually run asynchronously.
Each sync for the AD and SCCM connectors comes in 2 asynchronous steps – the first step extracts data from the source and puts it into a staging data cache; the second step takes data from the staging data cache and writes into the Service Manager CMDB.
You can follow the progress of these data syncs in Service Manager Beta 1 by looking at the Event Viewer under Administrative Tools:
If you click on the “Filter Current Log” action and pick the “Lfx Datacenter” “Lfx Service” and “Lfx Source Config” Event services, you will narrow down the events to those related to connectors.
If you are only interested in tracking the progress of a connector, you can filter to just the “Lfx Service” events.
For an SCCM Connector, you will see a sequence that looks something like this – once all of these events are done, the sync is completed.
During the running of a sync, even if the connector has not completed all of the processes, Configuration Items might be created or updated & can be visible in the Service Manager console. For example, you might see a number of computer CIs created during an SCCM sync. However, if you were to look at the Software or Software Updates installed on that computer, you might find they are still missing if the sync has not completed.
The problem we're having (Service Manager 2010 SP1 with CU3 Update) is AD and Config connectors that never complete. Happens at least twice a week, with associated performance degradation.
Before CU3, doing a Synchronize Now seemed not to help, but I have had one incident in our DEV environment since CU3 that responded well to re-synching. I don't know if this is a work-around yet.
Is there any way to diagnose why a connector fails? I can use the logs to pinpoint where processing seems to have stopped (usually around Importer.DCM and MomStore.PhysicalComputers). Or, is there a way to detect failure with a script and perform a re-synch? Preferably, using a DB query to find out if we're hung up.