某天mq服务器磁盘报警了,经过检查发现active mq  data 目录下面占用了大量空间,最后定位到是db.log过多导致

关于active mq 数据目录下db.log暴增占用过多磁盘空间的解决办法_db.log

这个文件看似是日志文件,但是不能轻易删除的

那要怎样删除呢?

首先你得知道它有什么用,它包含了待处理的订阅信息,删除掉它可能会导致数据丢失,也就是说你的未消费队列越多,那么这个日志也就越大,

同时data-<id>.log默认情况下,将每 30 秒清理一次未引用的 KahaDB 日志日志文件

知道了这个原因后,那就知道怎么删除日志了


解决办法就是:

登录mq控制台(我这里已经清理过了,最多的只剩623了)


打开web控制台  ​​http://192.168.1.174:8161/admin/queues.jsp​

关于active mq 数据目录下db.log暴增占用过多磁盘空间的解决办法_activemq_02


找到那个很多Number Of Pending Messages 的队列,点击purge清除掉(我这里是测试环境,确认过可以删除的,如果是生产,要找开发找出队列没被消费的原因,解决故障,队列被消费了日志也一样会被清理掉

过一会再看,db。log就自动清理了很多

关于active mq 数据目录下db.log暴增占用过多磁盘空间的解决办法_activemq_03


问题解决