...
We get one candidate, data-87.log from the existing set of journal data files [86, 87, 163, 164]. There is a current transaction using 164, destination (Queue named E) '0\:E' has some messages in 163, destination '0:I' has messages in 86 and 87 is unreferenced. In this case, there must be some long standing unacked messages or a very slow consumer on destination '0:I'.
The '0:' prefix is shorthand for a queue, '1:' for a topic, i.e: dest:1:B is a topic named B.
...
Non-persistent messages
Similar for non-persistent messages that are not stored in your configured KahaDB persistence adapter but get swapped to temp storage once they exceed the broker's configured memoryUsage limit. A similar logging configuration can show details of the cleanup of temp storage.
Code Block |
log4j.appender.kahadb=org.apache.log4j.RollingFileAppender
log4j.appender.kahadb.file=${activemq.base}/data/kahadb.log
log4j.appender.kahadb.maxFileSize=1024KB
log4j.appender.kahadb.maxBackupIndex=5
log4j.appender.kahadb.append=true
log4j.appender.kahadb.layout=org.apache.log4j.PatternLayout
log4j.appender.kahadb.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
log4j.logger.org.apache.activemq.store.kahadb=TRACE, kahadb
log4j.logger.org.apache.activemq.store.kahadb.MessageDatabase=INFO, kahadb
|
Note the last line of above logging configuration disables the verbose logging of the kahadb cleanup task. If that line gets removed, the cleanup details of both kahadb and temp storage will be logged to the same file but you need to be careful not to mix the logging output.