![RabbitMQ - Rabbitmq.conf 파일을 찾을 수 없습니다.](https://rvso.com/image/1601145/RabbitMQ%20-%20Rabbitmq.conf%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%B0%BE%EC%9D%84%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
나는 RabbitMQ 3.7.7을 사용하고 있으며 Windows Server 2012 R2 Standard에 설치 시 아래 단계를 수행했습니다.
- 마법사에서 변경 사항을 적용하지 않고 마법사의 기본 선택 사항을 사용하여 Erlang OTO 21(10.0.1)을 설치합니다.
- 마법사를 변경하지 않고 마법사의 기본 선택 사항으로 RabbitMQ 3.7.7을 설치합니다.
- 설치 과정에서 환경변수 등을 생성하지 않았습니다.
- Erlang 및 RabbitMQ 설치가 완료되면 RabbitMQ 서비스가 실행되며 기본적으로 경로 아래에 로그가 생성됩니다
\AppData\Roaming\RabbitMQ\log
. 현재 이 로그에서 너무 많은 'INFO' 항목을 볼 수 있으며 로그가 너무 빨리 채워져 하루에 거의 500MB의 속도로 디스크 공간을 불필요하게 소모하여 며칠에 걸쳐 다른 문제가 발생할 수 있습니다. 로그 파일에는 '오류'만 기록되고 '정보'는 기록되지 않는다는 점에 관심이 있습니다. - 실행 -> services.msc에서 RabbitMQ 서비스를 중지합니다.
- 로그 파일에는 다음과 같이 구성 파일의 경로가 언급되어 있습니다.
구성 파일 : c:/Users/MANPRE~1.SIN/AppData/Roaming/RabbitMQ/advanced.config
: c:/Users/MANPRE~1.SIN/ AppData/로밍/RabbitMQ/rabbitmq.conf
폴더 아래에서 Rabbitmq.conf 파일을 찾을 수 없기 때문에 \AppData\Roaming\RabbitMQ
구성에 대한 로그 항목이 'rabbitmq.conf를 찾을 수 없음'이라고 예상했지만 로그에는 해당 항목이 없습니다.
rabbitmq.config.example
그러나 동일한 경로에서 파일을 찾을 수 있습니다 . 코드의 주석 처리를 제거하고 파일에서 주석을 제거한 후 아래와 같이 파일을 저장합니다.
''' [
{토끼, [{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, Unique_name},
{ssl_handshake_timeout, 5000},
{ssl_allow_poodle_attack, false},
{password_hashing_module, Rabbit_password_hashing_sha256},
{config_entry_decoder, [{passphrase, <<"mypassphrase">>}]}
{config_entry _디코더, [{ passphrase, {file, "/path/to/passphrase/file"}}]}
{config_entry_decoder, [{passphrase, 프롬프트}]}
{config_entry_decoder, [{cipher, aes_cbc256},
{hash, sha512},
{iterations, 1000 }]}
{default_vhost, <<"/">>},
{default_user, <<"guest">>},
{default_pass, <<"guest">>},
{default_permissions, [<<".">>, <<".">>, <<".*">>]},
{default_user_tags, [관리자]},
{heartbeat, 60},
{frame_max, 131072},
{initial_frame_max, 4096},
{channel_max, 0},
{connection_max, 무한대},
{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, 무시},
{mirroring_sync_batch_size, 4096},
{cluster_nodes, {['[이메일 보호됨]'], 디스크}},
{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_eration_threshold, 1000},
{lazy_queue_explicit_gc_run_eration_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/ 로그/http"},
{리스너, [{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}]},
{기본, [{60, 5}, {3600, 60}]},
{상세, [{10, 5}]}]}
]},
{rabbitmq_shovel,
[{shovels,
[{my_first_shovel,
[{sources, [{brokers, ["amqp://user:[이메일 보호됨]/my_vhost"]},{선언, []}]}, {목적지, [{broker, "amqp://"},{선언, []}]},
{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, [{ 배달 모드, 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,
[
{서버, ["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}- 사용자,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]}]}]}
] }
]}
].
'''
- RabbitMQ.config.example 파일의 이름을 다음으로 바꿉니다.
rabbitmq.conf
- RabbitMQ 명령 프롬프트를 열고 명령
rabbitmq-plugins
활성화를 실행합니다.rabbitmq_management
- 실행 -> services.msc에서 RabbitMQ 서비스를 시작합니다.
- 서버를 다시 시작하십시오.
- 그 후에는 로깅이 중지됩니다. 위의 변경 사항이 작동했기 때문이 아니라 RabbitMQ 작동이 중지되었기 때문입니다.
기본 설치로 이전에 정상적으로 실행되었던 URL 실행에 실패하여 RabbitMQ가 작동하지 않는 것으로 확인되었습니다. http://localhost:15672/
대신 프록시 및 방화벽 오류가 발생하기 시작합니다.
- 일부 온라인 블로그에서는 .conf 파일에서 필요하지 않은 것을 제거하라고 제안했기 때문에 파일을 다음과 같이 변경했습니다.
[
{lager, [
{log_root, "/var/log/rabbitmq"},
{handlers, [
{lager_file_backend, [{file, "rabbit.log"},
{level, info},
{date, ""},
{ 크기, 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/' 열 수 없습니다.
- 다른 블로그에서는 .conf 파일을 다음과 같이 유지하도록 제안했습니다.
[ {토끼, [{log_levels,[{연결, 오류}]}]} ].
위의 작업을 수행한 후 RabbitMQ 명령 'rabbitmq-plugins' 활성화 'rabbitmq_management'를 실행하고 서버 및 Rabbitmq 서비스를 다시 시작했지만 여전히 RabbitMQ 로그인 페이지는 'http://localhost:15672/' 열 수 없습니다.
여러 블로그와 포럼을 살펴봤지만 어디가 잘못되었는지 확인할 수 없었습니다. 구성 파일의 이름을 '.conf'로 바꾼 순간 RabbitMQ가 작동을 멈췄기 때문에 뭔가 잘못되었다는 의심이 들었습니다.
제가 어디에서 잘못되고 있는지 지적해 주시거나 .conf 파일을 찾을 수 있도록 안내해 주시면 감사하겠습니다.
답변1
이전에도 .conf 파일에 다음 줄을 추가하라는 링크를 발견했습니다.
log.file.level = 오류
log.connection.level = 오류
log.channel.level = 오류
그러나 .conf 파일의 어느 섹션에 정확히 맞는지 알 수 없었습니다.
.conf 파일의 내용을 지우고 .conf 파일에 다음 3줄만 유지하여 다시 시도해 보았습니다.
log.file.level = error
log.connection.level = error
log.channel.level = error
그리고 효과가 있었어요..
당신은 설정할 수 있습니다로그 수준귀하의 요구 사항에 따라.
& 참조할 수 있음여기&여기이상.
따라서 RabbitMQ.conf 파일은 \AppData\Roaming\RabbitMQ 경로에만 있었습니다. 유일한 문제는 .conf 파일의 형식이 작동하지 않는 오래된 형식이라는 것입니다. 형식을 수정한 후 작동됩니다.