Debug logging - Debug logging - Alfresco - Alfresco Desktop Sync - Alfresco/Alfresco-Desktop-Sync/1.21/Alfresco-Desktop-Sync/Configure/Debug-logging - 1.21 - 1.21

Alfresco Desktop Sync

Platform
Alfresco
Product
Alfresco Desktop Sync
Release
1.21
License
ft:lastPublication
2026-04-16T22:04:45.619000
ft:locale
en-US

Desktop Sync can generate a lot of debug information or error level logging information.

The log output configuration contains two sections.

Use the first section to setup the log location, default logging level, formatting, rotation, and compression.

Here is a sample logging configuration section:

# Logging

logging.loggers.root.channel = c1
logging.loggers.root.level = error
logging.channels.c1.class = FileChannel
logging.channels.c1.path = ${alfresco.configDir}/AlfrescoDesktopSync.log
logging.channels.c1.formatter.class = PatternFormatter
logging.channels.c1.formatter.pattern = %Y-%m-%d %H:%M:%S.%c %N[%P]:%s:%q:%t
logging.channels.c1.rotation=daily
logging.channels.c1.compress=true
logging.channels.c1.purgeAge=7 days
logging.channels.c1.archive=timestamp
logging.formatters.f1.class = PatternFormatter
#logging.formatters.f1.formatter.pattern = %Y-%m-%d %H:%M:%S.%c %N[%P]:%s:%q:%t
logging.formatters.f1.times = UTC

This logging configuration will create a log file called AlfrescoDesktopSync.log in the following folder:

  • Windows: <userHome>\AppData\Local\Alfresco
  • Mac: ~/Library/Application Support/Alfresco

The log files are rotated daily and the old log files are compressed. Only the last 7 days of log files are kept.

Use the later section of the log output configuration to enable debug output from different components of Desktop Sync. This is done by configuring individual logging levels as shows below:

logging.loggers.l<n>.name = <logging level name>
logging.loggers.l<n>.level = <debug|error>

where <n> is an ascending index number starting at one. Both the configuration lines must use the same index number.

The available debug logging levels are:

Debug logging level Description
AccountSetup Account setup, create/remove sync targets
AlfrescoAPI Alfresco API calls
AlfrescoFileStoreMonitor Remote file system event polling
CMISAPI CMIS API calls
CMISFileStore Remote file I/O
CMISFilter Repository node type/aspect filters
CMISObjectCache CMIS objects cache
DeferredCheckSyncPattern Deferred files special handling
DeleteAddSyncPattern Delete/add (drag/drop cut/paste) local event special handling
DeleteRenameSyncPattern Delete/rename local event special handling
DeviceRegAPI Device registration API calls
DirectoryWatcher Low level local file system event handling
DirRouter Routing of local file system events
DumpJSON JSON request responses
KeychainAPI MacOS keychain access
LibCURLAPI LibCurl low level HTTP network I/O processing
LocalFileStore Local file I/O
LocalSyncScanner Sync manager startup local sync area scanner
PocoSQLiteDB Sync database access
RenameShuffleSyncPattern MS Office rename/shuffle local event special handling
RESTAPI Base REST API processing
SharedWin32FileStoreMonitorSharedMacOSXFileStoreMonitor Local file system monitoring
SyncChecker Consistency checker
SyncClientAPI Shell extension to sync client application calls
SyncConstraint File/folder name/extension constraints
SyncEventManager Event queue manager
SyncManager The top level sync component
SyncServiceAPI Sync Service API calls
SyncServiceRouter Shared synchronization service polling/event routing
SyncTarget Handles the connection between a single local/remote folder
SyncUI Desktop Sync UI configuration properties
TargetDelete Sync target delete parent folder special handling
TargetMoveToFrom Move files/folders between sync targets special handling
TargetRename Sync target parent folder rename special handling
WaterMark File watermarking (not currently used)

Here’s a sample Desktop Sync logging configuration:

# Logging

logging.loggers.root.channel = c1
logging.loggers.root.level = error
logging.channels.c1.class = FileChannel
logging.channels.c1.path = ${alfresco.configDir}/AlfrescoDesktopSync.log
logging.channels.c1.formatter.class = PatternFormatter
logging.channels.c1.formatter.pattern = %Y-%m-%d %H:%M:%S.%c %N[%P]:%s:%q:%t
logging.channels.c1.rotation=daily
logging.channels.c1.compress=true
logging.channels.c1.purgeAge=7 days
logging.channels.c1.archive=timestamp
logging.formatters.f1.class = PatternFormatter
#logging.formatters.f1.formatter.pattern = %Y-%m-%d %H:%M:%S.%c %N[%P]:%s:%q:%t
logging.formatters.f1.times = UTC

logging.loggers.l1.name = SyncManager
logging.loggers.l1.level = debug

logging.loggers.l2.name = SyncTarget
logging.loggers.l2.level = debug

logging.loggers.l3.name = DirectoryWatcher
logging.loggers.l3.level = error

logging.loggers.l4.name = SharedMacOSXFileStoreMonitor
logging.loggers.l4.level = error

logging.loggers.l5.name = CMISAPI
logging.loggers.l5.level = error

logging.loggers.l6.name = PocoSQLiteDB
logging.loggers.l6.level = error

For more details on the logging configuration, see the PocoProject documentation.