In WorldServer 11.1, 11.2, 11.3, 11.4 and 11.5, in
general.properties (under WS_CONFIG), add these lines, adapt the path associated with
log4j.appender.myappender.File= to the logs folder directory on the server. Also, you can add the Maintenance class logging to get more information as follows:
log4j.category.com.idiominc.ws.maintenance=DEBUG, myappender
log4j.appender.myappender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.myappender.datePattern='-'dd'.log'
log4j.appender.myappender.File=C:\\WORLDSERVER\\\logs\\\GarbageCollector.log
log4j.appender.myappender.layout=org.apache.log4j.PatternLayout
log4j.appender.myappender.layout.conversionPattern=[%d] %p %t %c: %m%n
If you work in a clustered environment, the log file should be configured on the server where the recurrence engine is running. The recurrence engine should always run only on one server. This is the property that controls if the recurrence engine is on or off:
recurrence_engine=onNote: Be aware that in 11.x versions
before 11.6, the entries from the separate Garbage Collector log are also entered in the ws-legacy log. This means that the ws-legacy log file might be overridden with the verbose entries from the maintenance debug logging. If you are worried about losing previous log entries, make a copy of your ws-legacy log files before enabling maintenance debug logging. Also, this logging is supposed to be temporary for troubleshooting issues with Garbage Collection. It should be disabled or set to warn once GC has run and re-enabled only if necessary.
Starting from WorldServer 11.6, the logging procedure has changed. This is what you should add to
general.properties under WS_CONFIG/
ws-legacy:
appenders=rolling, appenderFordbStatsLogger, appenderForthreadDumpLogger, appenderGCLogger
loggers = dbStatsLogger, threadDumpLogger, processEnginesEnd, rolling, appenderGCLogger
appender.appenderGCLogger.type = RollingFile
appender.appenderGCLogger.name = appenderGCLogger
appender.appenderGCLogger.fileName = c:/_ws/logs/gc.txt
appender.appenderGCLogger.filePattern = c:/_ws/logs/gc.txt.%i
appender.appenderGCLogger.layout.type = PatternLayout
appender.appenderGCLogger.layout.pattern = [%d] %p %C{1.} [%t] %m%n
appender.appenderGCLogger.policies.type = Policies
#appender.appenderFordbStatsLogger.policies.time.type = TimeBasedTriggeringPolicy
#appender.appenderFordbStatsLogger.policies.time.interval = 2
#appender.appenderFordbStatsLogger.policies.time.modulate = true
appender.appenderGCLogger.policies.size.type = SizeBasedTriggeringPolicy
appender.appenderGCLogger.policies.size.size=25MB
appender.appenderGCLogger.strategy.type = DefaultRolloverStrategy
appender.appenderGCLogger.strategy.max = 3
logger.appenderGCLogger.additivity = false
logger.appenderGCLogger.appenderRef.rolling.ref = appenderGCLogger
logger.appenderGCLogger.name = com.idiominc.ws.maintenance
logger.appenderGCLogger.level = debug
Make sure to adapt the directory associated with
appender.appenderGCLogger.fileName and
appender.appenderGCLogger.filePattern to the folder directory on the server.
appender.appenderGCLogger.policies.size.size: You can set the maximum file size as you prefer. In this example, we have set the max size to 25MB
appender.appenderGCLogger.strategy.max: This defines how many files with older settings you want to create. In the example above, if Garbage Collector writes a lot of data and the file reaches 25 MB file size, a second file will be added, and so on. After the 3rd one has reached the maximum size, the first one will be removed and a new one created. You can set this value to any number you want: 10, 20, 50, 100 etc.
If you have an environment with multiple servers, apply the same configuration to the general.properties file in each server where the WorldServer Service (Idiom Service) runs.
In WorldServer version 11.6. and later, the logging entries will be written into the
separate Garbage Collector log only and
not in the ws-legacy.log as well, as in previous versions.
This article explains how to read the entries created by the Maintenance debug logging:
WorldServer - after enabling Maintenance debug logging, which Garbage Collector entries can be found in the log files, especially for Project Cleaner and how to read them?
https://docs.sdl.com/770288/816213/sdl-worldserver-11-6-user-documentation/sample-logging-configuration-for-the-garbage-collector