2016-10-01 13 views
2

rabbitmq 3.5.6を実行しているサーバーがあり、一度にディスクがいっぱいになってしまいました。rabbitmq mnesiaからのデータの回復中にエラーが発生しました

サーバに問題があり、mnesiaフォルダからrabbitmqを持つ別のサーバにファイルをコピーしようとしました。以前のホスト名と一致するように新しいサーバーで必要なものを変更しました。

クラッシュした複数のサーバーのファイルでこれを試しました。キューメッセージを回復できます。

しかし、いくつかのサービスでは、rabbitmq-server startコマンドを実行したときに、それを実行できず、ハングアップまたはフリーズしているようです。 [email protected]のベースには、多分パースセグメントの問題があるようです。

しかし、仮想ホスト '/'でクラッシュしたキュー 'クリック'を再起動していることを示す行が表示されます。時間がかかり過ぎると(スタックされているかどうかわからない)、行の一部が再度繰り返され、クラッシュされたキューが再起動されます。

ご協力いただければ幸いです。ありがとう。それは起動時

はここで...

=INFO REPORT==== 30-Sep-2016::16:45:15 === 
Starting RabbitMQ 3.5.6 on Erlang R14B04 
Copyright (C) 2007-2015 Pivotal Software, Inc. 
Licensed under the MPL. See http://www.rabbitmq.com/ 
=INFO REPORT==== 30-Sep-2016::16:45:15 === 
node : [email protected] 
home dir : /var/lib/rabbitmq 
config file(s) : /etc/rabbitmq/rabbitmq.config 
cookie hash : OHOm6cAi0pRByqTsrYdG1A== 
log : /var/log/rabbitmq/[email protected] 
sasl log : /var/log/rabbitmq/[email protected] 
database dir : /var/lib/rabbitmq/mnesia/[email protected] 
=INFO REPORT==== 30-Sep-2016::16:45:15 === 
Memory limit set to 12838MB of 16047MB total. 
=INFO REPORT==== 30-Sep-2016::16:45:15 === 
Disk free limit set to 50MB 
=INFO REPORT==== 30-Sep-2016::16:45:15 === 
Limiting to approx 924 file handles (829 sockets) 
=INFO REPORT==== 30-Sep-2016::16:45:15 === 
FHC read buffering: ON 
FHC write buffering: ON 
=INFO REPORT==== 30-Sep-2016::16:45:16 === 
Priority queues enabled, real BQ is rabbit_variable_queue 
=INFO REPORT==== 30-Sep-2016::16:45:16 === 
Management plugin: using rates mode 'basic' 
=INFO REPORT==== 30-Sep-2016::16:45:16 === 
msg_store_transient: using rabbit_msg_store_ets_index to provide index 
=INFO REPORT==== 30-Sep-2016::16:45:16 === 
msg_store_persistent: using rabbit_msg_store_ets_index to provide index 
=ERROR REPORT==== 30-Sep-2016::16:45:18 === 
** Generic server <0.240.0> terminating 
** Last message in was {init,{<0.159.0>,[non_clean_shutdown]}} 
** When Server state == {q,{amqqueue, 
{resource,<<"/">>,queue,<<"clicks">>}, 
true,false,none,[],<0.240.0>,[],[],[], 
undefined,[],undefined,live}, 
none,false,undefined,undefined, 
{state, 
{queue,[],[],0}, 
{active,1475268316149018,1.0}}, 
undefined,undefined,undefined,undefined, 
{state,fine,5000,undefined}, 
{0,nil}, 
undefined,undefined,undefined, 
{state, 
{dict,0,16,16,8,80,48, 
{[],[],[],[],[],[],[],[],[],[],[],[],[],[], 
[],[]}, 
{{[],[],[],[],[],[],[],[],[],[],[],[],[], 
[],[],[]}}}, 
delegate}, 
undefined,undefined,undefined,undefined,0,running} 
** Reason for termination == 
** {function_clause, 
[{rabbit_queue_index,parse_segment_entries, 
[<<"y">>,false, 
{{array,16384,0,undefined, 
{{{{{{{true, 
<<6,79,246,149,241,55,30,251,55,72,30,36,11,132, 
161,214,0,0,0,0,0,0,0,0,0,0,4,167>>, 
<<131,104,6,100,0,13,98,97,115,105,99,95,109,101, 
115,115,97,103,101,104,4,100,0,8,114,101,115, 
111,117,114,99,101,109,0,0,0,1,47,100,0,8,101, 
120,99,104,97,110,103,101,109,0,0,0,0,108,0,0,0, 
1,109,0,0,0,6,99,108,105,99,107,115,106,104,6, 
100,0,7,99,111,110,116,101,110,116,97,60,100,0, 
4,110,111,110,101,109,0,0,0,3,16,0,2,100,0,25, 
114,97,98,98,105,116,95,102,114,97,109,105,110, 
103,95,97,109,113,112,95,48,95,57,95,49,108,0,0, 
0,1,109,0,0,4,167,123,34,64,118,101,114,115,105, 
111,110,34,58,34,49,34,44,34,64,116,105,109,101, 
115,116,97,109,112,34,58,34,50,48,49,54,45,48, 
57,45,50,57,84,49,48,58,48,57,58,50,56,46,54,49, 
56,90,34,44,34,98,101,97,116,34,58,123,34,104, 
111,115,116,110,97,109,101,34,58,34,105,112,45, 
49,48,45,50,53,50,45,50,45,49,48,48,34,44,34, 
110,97,109,101,34,58,34,105,112,45,49,48,45,50, 
53,50,45,50,45,49,48,48,34,125,44,34,115,111, 
117,114,99,101,34,58,34,47,118,97,114,47,108, 
111,103,47,102,105,108,101,98,101,97,116,47,114, 
97,98,98,105,116,109,113,95,99,108,105,99,107, 
115,47,102,105,108,101,98,101,97,116,46,106,115, 
111,110,34,44,34,116,121,112,101,34,58,34,108, 
111,103,34,44,34,104,111,115,116,34,58,34,105, 
. 
. 
. 
          50,56,46,57,54,52,55,125,44,34,108,111,103,116, 
          121,112,101,34,58,34,67,108,105,99,107,79,114, 
          69,114,114,111,114,34,125,106,109,0,0,0,16,209, 
          241,202,203,147,189,214,158,240,46,46,46>>}, 
        del,no_ack}, 
        undefined,undefined,undefined,undefined,undefined, 
        undefined}, 
        10,10}, 
       100,100,100,100,100,100,100}, 
       1000,1000,1000,1000}, 
       10000,10000,10000,10000,10000,10000,10000,10000,10000}}, 
      16384}]}, 
    {rabbit_queue_index,recover_segment,3}, 
    {rabbit_queue_index,'-init_dirty/3-fun-0-',5}, 
    {lists,foldl,3}, 
    {rabbit_queue_index,init_dirty,3}, 
    {rabbit_variable_queue,init,6}, 
    {rabbit_priority_queue,init,3}, 
    {rabbit_amqqueue_process,init_it2,3}]} 
=ERROR REPORT==== 30-Sep-2016::16:49:54 === 
Restarting crashed queue 'clicks' in vhost '/'. 
+0

我々はRabbitMQのキューIDXファイルと永続ストアRDQファイルを読み取ることができるこのツールを見つけました。そのデータを一度に1つのメッセージでrabbitmqに再インポートし、消費者にデータを正常に処理させることができました。 https://github.com/jeffbryner/rdqdump –

答えて

3

私たちは、サーバからきたログです私たちは、RabbitMQのキューIDXファイルと永続ストアRDQファイルを読み取ることができるこのツールを見つけました。そのデータを一度に1つのメッセージでrabbitmqに再インポートし、消費者にデータを正常に処理させることができました。

https://github.com/jeffbryner/rdqdump

+0

これは素晴らしい仕事でした。私はPythonの最新バージョンに更新するプルリクエストを提出しました。誰かを助けることを願っています! –

関連する問題