Я использую двухузловой кластер RabbitMQ. Кластер обрабатывает около 200 тыс. Сообщений в секунду, большинство из которых (из-за ошибки конфигурации) находятся на одном узле. Уже случалось, что наиболее нагруженный узел блокировался, потому что диск (100 ГБ) был заполнен, в то время как Кролик видел только около 20 МБ использования очереди. В этом случае rabbitmqctl
согласуется с веб-интерфейсом, но запуск команды du -h
в каталоге очередей Rabbit показывает, что файлы журналов mnesia намного больше, чем в двух журналах, использующих только 80 ГБ.
Заглянув в журналы, я обнаружил, что они содержат сообщения, которых больше не должно быть в системе, поскольку они были обработаны несколько недель назад. Хотя я планирую переместить некоторые очереди в другой узел, чтобы уменьшить нагрузку, мне все еще нужно избегать этих фантомных сообщений, чтобы блокировать их оба. Есть ли способ очистить эти журналы, не рискуя потерять новые сообщения (которые все еще пишутся в них)?