Debugging & Monitoring
To monitor DirSync output, you can use the server console or the server log.nsf.
This in general lets you identify possible errors during DirSync processing.
If you need a more verbose output, or you want to dig deeper into DirSync functionallity, use the following notes.ini variable to create some kind of trace mode.
set con DIRSYNC_DEFAULT_ARGS=-v
You do not need to restart the DirSync task to switch verbose logging on / off.
Instead of just the summary line
[1730:0004-0BE0] 20.01.2020 12:13:56 DIRSYNC From Active Directory (AD) - Summary (0.003 sec, Start=234796, Adds=0, Modifies=0, Deletes=0, Skips=0, Errors=0, End=234795)
by setting the parameter, you will get a more verbose output.
[1730:0004-0BE0] DirSync ResyncAll by CheckBox: 0 [1730:0004-0BE0] DirSync Preview: 0 [1730:0004-0BE0] DirSync Level: 16 [1730:0004-0BE0] DirSync SyncFlows: 2 [1730:0004-0BE0] DirSync OnPremCookie: [1730:0004-0BE0] DirSync UserDirCookie: 234795 [1730:0004-0BE0] DirSync CSyncFromAD::SyncSpan (NAMEldap_search_ext_s call) : (&(&(|(objectClass=Group)(objectClass=Person))(|(mail=@brightside.)(mail=@darkside.)(mail=@msdn.)))(uSNChanged>=234796)) took 1 msec [1730:0004-0BE0] 20.01.2020 12:14:47 DIRSYNC From Active Directory (AD) - Summary (0.001 sec, Start=234796, Adds=0, Modifies=0, Deletes=0, Skips=0, Errors=0, End=234795)
With this parameter in place, you will also be able to monitor which attributes have been changed in Active Directory.
[1428:0005-17F8] DirSync Processing ldap entry (SyncSpan) #1 from page #1, total entries #1: 'CN=James Kirk,CN=Sync,DC=ad,DC=fritz,DC=box' [1428:0005-17F8] DirSync Entry with mail address 'j.kirk@brightside.org' - NoteID 10082 was found in the target directory. [1428:0005-17F8] DirSync DirSync CSyncFromAD::DoModify(dn = 'CN=James Kirk,CN=Sync,DC=ad,DC=fritz,DC=box', newentry=0) [1428:0005-17F8] DirSync Modified MiddleInitial from '' to 'T' [1428:0005-17F8] DirSync Modified uSNChanged from '234775' to '234796' [1428:0005-17F8] DirSync 'person' Document updated, UTF8 Name = 'CN=James Kirk,CN=Sync,DC=ad,DC=fritz,DC=box' [1428:0005-17F8] DirSync CSyncFromAD::DoModify - Modified existing Note for 'CN=James Kirk,CN=Sync,DC=ad,DC=fritz,DC=box' [1428:0005-17F8] DirSync [1428:0005-17F8] 20.01.2020 12:19:37 DIRSYNC From Active Directory (AD) - Summary (0.037 sec, Start=234796, Adds=0, Modifies=1, Deletes=0, Skips=0, Errors=0, End=234796)
The above output also indicates a possible bug in the DirSync task setting values on the Status tab of the configuration document.
While the LDAP change number corresponds to the End=234796 value in the summary record, the Last sync time (20.01.2020 12:19:37) entry is not updated.
Not sure, at what time this value is being set. I will keep an eye on it.
DirSync also collects several stats. You can access them either from the Admin Client.
or issuing a show stat DirSync command on the server console
show stat dirsync [1CDC:0009-1EC8] DirSync.AD.FromAD.Adds = 6 [1CDC:0009-1EC8] DirSync.AD.FromAD.Deletes = 6 [1CDC:0009-1EC8] DirSync.AD.FromAD.Millis = 18086 [1CDC:0009-1EC8] DirSync.AD.FromAD.Modifies = 2 [1CDC:0009-1EC8] DirSync.AD.FromAD.Skips = 9 [1CDC:0009-1EC8] DirSync.MIDPOINTS.FromAD.Millis = 108 [1CDC:0009-1EC8] DirSync.Totals.LatestAllDirSyncDocsMillis = 3 [1CDC:0009-1EC8] DirSync.Totals.LongestAllDirSyncDocsMillis = 191 [1CDC:0009-1EC8] DirSync.Totals.LongestSyncTimeMillis = 190 [1CDC:0009-1EC8] DirSync.Totals.LongestSyncTimeNABName = names.nsf [1CDC:0009-1EC8] DirSync.Totals.NumADChangeQueriesSyncSpan = 1221 [1CDC:0009-1EC8] DirSync.Totals.TimeADChangeQueriesSyncSpan = 15769 [1CDC:0009-1EC8] DirSync.Totals.TotalDirSyncDocs = 2 [1CDC:0009-1EC8] DirSync.Totals.TotalRequestDocs = 0 [1CDC:0009-1EC8] DirSync.Totals.TotalSuccessfulNABSyncs = 30 [1CDC:0009-1EC8] 15 statistics found
In addition to the notes.ini parameter mentioned above, DirSync comes with a lot more notes.ini parameters. They are not documented and should only be used when support advices you to do so.
You can find a list of those parameters using the following command on the server console.
te dirsync show [1730:0004-0BE0] DirSync> DIRSYNC_DEFAULT_ARGS=-v [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_STRICT_ASSERT=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_THREAD_TRACE_LEVEL=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_DISABLE_BG_THREADS=0 [1730:0004-0BE0] DirSync> DIRSYNC_THREADS=10 [1730:0004-0BE0] DirSync> DIRSYNC_BG_THREADS=10 [1730:0004-0BE0] DirSync> DIRSYNC_BG_THREADS_CUSTOMER_ALLOWED=3 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_STARTUP_DELAY=60000 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_STARTUP_THREAD_ABORT=10 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_DELAY=60000 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_FORCE_RUNMODE=1 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_REPLICATE=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_YELLOWZONE=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_MARK_INVALID_INTERVAL_MINUTES=60 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_CHANGELOG_TIMELIMIT=300 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_CHANGELOG_SIZELIMIT=10000 [1730:0004-0BE0] DirSync> DEBUG_IDRSYNC_CHANGELOG_CHANGETIME_LIMIT=10000 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_SKIPLOG_LIMIT=50 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_SERVERROLE_CHECK=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_REPLICATION_SERVER_CHECK=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_CONFLICT_CLEANUP=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_FIRSTSYNC_OPTIMIZATION=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_ACL_CHECK=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_ECL_CHECK=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_MAILHUBS_CHECK=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_NO_DOMAINNAME_CHECK=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_ELSEWHERE_CHECK_INTERVAL_MINS=60 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_TRIANGULATION_INTERVAL_MINS=10 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_TRACE_NOTESDN= [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_RESYNC_ONCE_NOTESDN= [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_FLUSH_CONFIG_FREQUENTLY=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_CERTIFIER_BLACKLIST= [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_CDIR_UPDATE_VIEWNAMES= [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_HYGIENICRESTART_THRESHOLD=100000 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_EXCLUDE_CUSTOMERID= [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_EXCLUDE_USERID= [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_INCLUDE_ONLY_CUSTOMERID= [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_DISABLE_AUTO_SYNC_ALL=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_LEAKS=0 [1730:0004-0BE0] DirSync> DEBUG_MAX_CHANGELOG_RENAME_SEARCH_ITERATIONS=20 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_DONT_PANIC_ON_MAX_MEM_SEGMENTS=0 [1730:0004-0BE0] DirSync> DEBUG_INVALID_BBLOCK_IN_SYNCTHREAD=0 [1730:0004-0BE0] DirSync> DEBUG_SKIP_INVALID_BBLOCK_IN_SYNCTHREAD=0 [1730:0004-0BE0] DirSync> DEBUG_USE_OLD_RESYNCONCE_PROCESSING=0 [1730:0004-0BE0] DirSync> DEBUG_USE_DIRSYNC_RESPONSE_DOCS=0 [1730:0004-0BE0] DirSync> DEBUG_MULTI_BG_THREADS_TO_A_CUSTOMER=0 [1730:0004-0BE0] DirSync> DEBUG_DIRSYNC_MAX_REQUEST_ERRORS=0
Use / change this parameters only when told by HCL support.