RabbitMQ - rabbitmq.conf ファイルが見つかりません

RabbitMQ - rabbitmq.conf ファイルが見つかりません

私は RabbitMQ 3.7.7 を使用しており、Windows Server 2012 R2 Standard へのインストールで以下の手順を実行しました。

  1. ウィザードで変更を加えずに、ウィザードのデフォルト選択を使用して Erlang OTO 21 (10.0.1) をインストールします。
  2. ウィザードで変更を加えずに、ウィザードのデフォルト選択を使用して RabbitMQ 3.7.7 をインストールします。
  3. インストールプロセス中に、環境変数などを作成していません。
  4. Erlang と RabbitMQ のインストールが完了すると、RabbitMQ サービスが起動し、デフォルトで、パスの下にログが作成されます\AppData\Roaming\RabbitMQ\log。現在、このログには「INFO」エントリが多すぎることが確認されており、ログがすぐにいっぱいになり、1 日あたり約 500 MB のペースでディスク領域が不必要に消費され、数日間にわたって他の問題を引き起こします。ログ ファイルに「エラー」のみが記録され、「情報」が記録されないことに興味があります。
  5. 「実行」->「services.msc」から、RabbitMQ サービスを停止します。
  6. ログ ファイルには、構成ファイルのパスが次のように記載されています:
    構成ファイル: c:/Users/MANPRE~1.SIN/AppData/Roaming/RabbitMQ/advanced.config
    : c:/Users/MANPRE~1.SIN/AppData/Roaming/RabbitMQ/rabbitmq.conf

フォルダーの下に rabbitmq.conf ファイルが見つからないため\AppData\Roaming\RabbitMQ、config のログに「rabbitmq.conf が見つかりません」というエントリがあることを期待していましたが、ログにはそのようなエントリはありませんでした。

  1. ただし、同じパスでファイルを見つけることができますrabbitmq.config.example。コードのコメントを解除し、ファイルからコメントを削除して、以下のようにファイルを保存します。

''' [
{rabbit, [{tcp_listeners, [5672]},
{tcp_listeners, [{"127.0.0.1", 5672},
{"::1", 5672}]},
{ssl_listeners, [5671]},
{num_tcp_acceptors, 10},
{num_ssl_acceptors, 1},
{handshake_timeout, 10000},
{reverse_dns_lookups, false},
{loopback_users, [<<"guest">>]},
{loopback_users, []},
{ssl_options, [{cacertfile, "/path/to/testca/cacert.pem"},
{certfile, "/path/to/server/cert.pem"},
{keyfile, "/path/to/server/key.pem"},
{verify, verify_peer},
{fail_if_no_peer_cert, false}]},
{auth_mechanisms, ['PLAIN', 'AMQPLAIN']},
{auth_backends, [rabbit_auth_backend_internal]},
{auth_mechanisms, ['EXTERNAL']},
{auth_backends, [rabbit_auth_backend_ldap]},
{ssl_cert_login_from, distinctive_name},
{ssl_handshake_timeout, 5000},
{ssl_allow_poodle_attack, false},
{password_hashing_module, rabbit_password_hashing_sha256},
{config_entry_decoder, [{passphrase, <<"mypassphrase">>}]}
{config_entry_decoder, [{passphrase, {file, "/path/to/passphrase/file"}}]}
{config_entry_decoder、[{passphrase, prompt}]}
{config_entry_decoder、[{cipher, aes_cbc256},
{hash, sha512},
{iterations, 1000}]}
{default_vhost, <<"/">>},
{default_user, <<"guest">>},
{default_pass, <<"guest">>},
{default_permissions, [<<".「>>、<<」。">>, <<".*">>]},
{default_user_tags, [administrator]},
{heartbeat, 60},
{frame_max, 131072},
{initial_frame_max, 4096},
{channel_max, 0},
{connection_max, infinity},
{tcp_listen_options, [{backlog, 128},
{nodelay, true},
{exit_on_close, false}]},
{vm_memory_high_watermark, 0.4},
{vm_memory_high_watermark, {absolute, 1073741824}},
{vm_memory_high_watermark, {absolute, "1024M"}},
{vm_memory_high_watermark_paging_ratio, 0.5},
{vm_memory_calculation_strategy, rss},
{memory_monitor_interval, 2500},
{total_memory_available_override_value, "5000MB"},
{disk_free_limit, 50000000},
{disk_free_limit, "50MB"},
{disk_free_limit, "50000kB"},
{disk_free_limit, "2GB"},
{disk_free_limit, {mem_relative, 2.0}},
{queue_master_locator, <<"client-local">>},
{mirroring_sync_batch_size, 4096},
{mirroring_flow_control, true},
{server_properties, []},
{cluster_partition_handling, ignore},
{mirroring_sync_batch_size, 4096},
{cluster_nodes, {['[メールアドレス]'], disc}},
{cluster_keepalive_interval, 10000},
{collect_statistics, none},
{collect_statistics_interval, 5000},
{trace_vhosts, []},
{hipe_compile, false},
{delegate_count, 16},
{mnesia_table_loading_retry_limit, 10},
{mnesia_table_loading_retry_timeout, 30000},
{queue_index_embed_msgs_below, 4096},
{queue_index_max_journal_entries, 32768},
{msg_store_credit_disc_bound, {4000, 800}},
{msg_store_io_batch_size, 4096},
{credit_flow_default_credit, {400, 200}},
{channel_operation_timeout, 15000},
{queue_explicit_gc_run_operation_threshold, 1000},
{lazy_queue_explicit_gc_run_operation_threshold, 1000},
{disk_monitor_failure_retries, 10},
{disk_monitor_failure_retry_interval, 120000},
{background_gc_enabled, false},
{background_gc_target_interval, 60000},
{msg_store_file_size_limit, 16777216},
{fhc_write_buffering, true},
{fhc_read_buffering, false}
]},
{kernel, [{net_ticktime, 60}]},
{rabbitmq_management, [ {load_definitions, "/path/to/exported/definitions.json"},
{http_log_dir, "/path/to/rabbitmq/logs/http"},
{listener, [{port, 12345},
{ip, "127.0.0.1"},
{ssl, true},
{ssl_opts, [{cacertfile, "/path/to/cacert.pem"},
{certfile, "/path/to/cert.pem"},
{keyfile, "/path/to/key.pem"}]}]},
{rates_mode, basic},
{sample_retention_policies,
[{global, [{60, 5}, {3600, 60}, {86400, 1200}]},
{basic, [{60, 5}, {3600, 60}]},
{detailed, [{10, 5}]}]}
]},
{rabbitmq_shovel、
[{shovels、
[{my_first_shovel、
[{sources、[{brokers、["amqp://user:[メールアドレス]/my_vhost"]},{declarations, []}]}, {destinations, [{broker, "amqp://"},{declarations, []}]},
{queue, <<"your-queue-name-goes-here">>},
{prefetch_count, 10},
{ack_mode, on_confirm},
{publish_fields, [{exchange, <<"my_exchange">>},
{routing_key, <<"from_shovel">>}]},
{publish_properties, [{delivery_mode, 2}]},
{reconnect_delay, 2.5}
]}
]}
{defaults, [{prefetch_count, 0},
{ack_mode, on_confirm},
{publish_fields, []},
{publish_properties, [{delivery_mode, 2}]},
{reconnect_delay, 2.5}]}
]},

{rabbitmq_stomp、
[
{tcp_listeners、[{"127.0.0.1", 61613},
{"::1", 61613}]},
{ssl_listeners、[61614]},
{num_tcp_acceptors, 10},
{num_ssl_acceptors, 1},
{ssl_cert_login, true},
{default_user,
[{login, "guest"},
{passcode, "guest"}]},
{implicit_connect, true},
{proxy_protocol, false}
]
},

{rabbitmq_mqtt、
[
{default_user、<<"guest">>}、
{default_pass、<<"guest">>}、
{allow_anonymous、true}、
{vhost、<<"/">>}、
{exchange、<<"amq.topic">>}、
{subscription_ttl、1800000}、
{prefetch、10}、
{tcp_listeners、[1883]}、
{ssl_listeners、[]}、
{num_tcp_acceptors、10}、
{num_ssl_acceptors、1}、
{tcp_listen_options、[
{backlog、128}、
{linger、{true、0}}、
{exit_on_close、false}
]}、
{proxy_protocol、false}
]}、

{rabbitmq_amqp1_0、
[
{default_user、"guest"}、
{protocol_strict_mode、false}
]}、

{rabbitmq_auth_backend_ldap、
[
{servers、["your-server-name-goes-here"]},
{use_ssl, false},
{port, 389},
{timeout, infinity},
{log, false},
{user_dn_pattern, "cn=${username},ou=People,dc=example,dc=com"},
{dn_lookup_attribute, "userPrincipalName"},
{dn_lookup_base, "DC=gopivotal,DC=com"},
{other_bind, as_user},
{vhost_access_query, {in_group,"ou=${vhost}- users,ou=vhosts,dc=example,dc=com"}}, {resource_access_query, {constant, true}},
{tag_queries, []}
]},

{lager、[
{log_root、"/var/log/rabbitmq"}、
{handlers、[
{lager_file_backend、[{file、"rabbit.log"}、
{level、info}、
{date、""}、
{size、0}]}
]}、
{extra_sinks、[ {rabbit_log_lager_event、[{handlers、[{lager_forwarder_backend、[lager_event、info]}]}]}、
{rabbit_channel_lager_event、[{handlers、[{lager_forwarder_backend、[lager_event、info]}]}]}、
{rabbit_conection_lager_event、[{handlers、[{lager_forwarder_backend、[lager_event、info]}]}]}、
{rabbit_mirroring_lager_event、[{handlers、 [{lager_forwarder_backend、[lager_event、info]}]}]}
]}
]}
]。
'''

  1. RabbitMQ.config.exampleファイルの名前をrabbitmq.conf
  2. RabbitMQコマンドプロンプトを開き、 rabbitmq-pluginsenableコマンドを実行します。rabbitmq_management
  3. 「実行」->「services.msc」から、RabbitMQ サービスを開始します。
  4. サーバーを再起動します。
  5. ただし、この後、ログ記録は行われなくなります。これは、上記の変更が機能したからではなく、RabbitMQ が機能しなくなったためです。

URL のhttp://localhost:15672/起動に失敗し、以前はデフォルトのインストールで正常に起動していたのに、プロキシとファイアウォールのエラーが表示されるため、RabbitMQ が機能していないことが確認されました。

  1. あるオンライン ブログで、.conf ファイルから不要なものを削除するよう提案されたので、ファイルを次のように変更しました。

[
{lager、[
{log_root、"/var/log/rabbitmq"}、
{handlers、[
{lager_file_backend、[{file、"rabbit.log"}、
{level、info}、
{date、""}、
{size、0}]}
]}、
{extra_sinks、[ {rabbit_log_lager_event、[{handlers、[{lager_forwarder_backend、[lager_event、info]}]}]}、
{rabbit_channel_lager_event、[{handlers、[{lager_forwarder_backend、[lager_event、info]}]}]}、
{rabbit_conection_lager_event、[{handlers、[{lager_forwarder_backend、[lager_event、info]}]}]}、
{rabbit_mirroring_lager_event、[{handlers、 [{lager_forwarder_backend、[lager_event、info]}]}]}
]}
]}
]。

上記を実行した後、RabbitMQコマンド「rabbitmq-plugins」を実行し、「rabbitmq_management」を有効にしてサーバーとrabbitmqサービスを再起動しましたが、RabbitMQのログインページはまだ表示されます。http://localhost:15672/' 開けられなかった。

  1. 他のブログでは、.conf ファイルを次のように保存することを提案しています。

[ {rabbit、[{log_levels、[{connection, error}]}]} ]。

上記を実行した後、RabbitMQコマンド「rabbitmq-plugins」を実行し、「rabbitmq_management」を有効にしてサーバーとrabbitmqサービスを再起動しましたが、RabbitMQのログインページはまだ表示されます。http://localhost:15672/' 開けられなかった。

いくつかのブログやフォーラムに目を通しましたが、どこが間違っているのか特定できませんでした。設定ファイルの名前を「.conf」に変更した瞬間に何かが間違っているのではないかと強く疑っています。なぜなら、その後 RabbitMQ が動作しなくなったからです。

どこが間違っているのかを指摘していただくか、.conf ファイルを見つける方法を教えていただければ幸いです。

答え1

以前、.conf ファイルに次の行を追加するように求めるリンクもいくつか見かけました:
log.file.level = error
log.connection.level = error
log.channel.level = error

しかし、それが .conf ファイルのどのセクションに正確に当てはまるのかはわかりませんでした。

.conf ファイルの内容をクリアし、.conf ファイルに次の 3 行を残すだけで再度試してみました:
log.file.level = error
log.connection.level = error
log.channel.level = error

そしてそれはうまくいきました。

設定できるのはログレベルご要望に応じて。
参照できますここここ多くのための。

つまり、RabbitMQ.conf ファイルはパス \AppData\Roaming\RabbitMQ にのみ存在していましたが、.conf ファイルの形式が古いため動作していませんでした。形式を修正した後、動作するようになりました。

関連情報