3

有许多没有清理的 kahaDB 日志。清除旧的“data-<id>-log”文件是否安全?手动删除 kahaDB 文件后,我应该重新启动 activeMQ 还是重新部署应用程序?

4

2 回答 2

3

不。简单地进入 KahaDB 日志并开始删除它们是不安全的,这些日志是您的消息和其他运行时代理信息的存储位置。如果索引文件损坏以重播和恢复代理状态,也会使用日志。删除旧日志可能意味着您无法从磁盘损坏等中恢复。

您需要做的是确定为什么您的日志文件会如此增长。发生这种情况的原因有很多,解决方案因原因而异。通过阅读有关此主题的文档,您可以自己进行一些调试,以获得有关使旧日志保持活动状态的一些答案。

于 2017-02-20T15:00:34.697 回答
1

我建议你找出为什么你的 kahadb 文件一开始没有被清除。通过将此日志配置添加到 log4j.properties。然后,您可以在 kahadb.log 中准确查看保存 kahadb 文件的内容。

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.MessageDatabase=TRACE, kahadb
于 2017-02-22T05:18:48.077 回答