我有RabbitMQ实例来处理消息。我注意到由于某种原因,Rabbit停止向消费者发送消息,因为队列不断增加,因此最终系统中的磁盘空间非常低。
我能够在兔子的日志文件中找到以下信息:
** Reason for termination ==
** {{badmatch,{error,enospc}},
[{rabbit_msg_store,terminate,2,
[{file,"src/rabbit_msg_store.erl"},{line,975}]},
{gen_server2,terminate,3,[{file,"src/gen_server2.erl"},{line,1146}]},
{proc_lib,wake_up,3,[{file,"proc_lib.erl"},{line,250}]}]}
** In 'terminate' callback with reason ==
** {{badmatch,{error,enospc}},
[{rabbit_msg_store,write_message,3,
[{file,"src/rabbit_msg_store.erl"},{line,1160}]},
{rabbit_msg_store,handle_cast,2,
[{file,"src/rabbit_msg_store.erl"},{line,881}]},
{gen_server2,handle_msg,2,[{file,"src/gen_server2.erl"},{line,1049}]},
{proc_lib,wake_up,3,[{file,"proc_lib.erl"},{line,250}]}]}
你们有没有人遇到过这样的问题?兔子试图告诉我的任何帮助或信息将不胜感激。
谢谢。
答案 0 :(得分:5)
** {{badmatch,{error,enospc}},
是Erlang错误:
ENOSPC 设备上没有剩余空间。
基本上你只需要释放空间!
希望有所帮助