diff options
| author | Michael Klishin <michael@clojurewerkz.org> | 2017-03-23 00:12:49 +0300 |
|---|---|---|
| committer | Michael Klishin <michael@clojurewerkz.org> | 2017-03-23 00:12:49 +0300 |
| commit | a4820b286a7d81ca06d6de738046021368a57b79 (patch) | |
| tree | 3f215b53ad0af3a1d521b7bc5060eb5cdfa88173 /src/rabbit.erl | |
| parent | 89b049eb9e41c605e6d33fcc1f818c3c0a0d049d (diff) | |
| parent | 87ba6316f585885a9c2ebcfa93867069026d6709 (diff) | |
| download | rabbitmq-server-git-a4820b286a7d81ca06d6de738046021368a57b79.tar.gz | |
Merge branch 'stable' into binarin-embed-friendly
Conflicts:
test/unit_inbroker_SUITE.erl
Diffstat (limited to 'src/rabbit.erl')
| -rw-r--r-- | src/rabbit.erl | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl index 46c40e385c..1a69dd5b88 100644 --- a/src/rabbit.erl +++ b/src/rabbit.erl @@ -434,18 +434,26 @@ start_it(StartFun) -> stop() -> case whereis(rabbit_boot) of undefined -> ok; - _ -> await_startup(true) + _ -> + rabbit_log:info("RabbitMQ hasn't finished starting yet. Waiting for startup to finish before stopping..."), + await_startup(true) end, - rabbit_log:info("Stopping RabbitMQ~n", []), + rabbit_log:info("RabbitMQ is asked to stop...~n", []), Apps = ?APPS ++ rabbit_plugins:active(), stop_apps(app_utils:app_dependency_order(Apps, true)), - rabbit_log:info("Stopped RabbitMQ application~n", []). + rabbit_log:info("Successfully stopped RabbitMQ and its dependencies~n", []). stop_and_halt() -> try stop() + catch Type:Reason -> + rabbit_log:error("Error trying to stop RabbitMQ: ~p:~p", [Type, Reason]) after - rabbit_log:info("Halting Erlang VM~n", []), + AppsLeft = [ A || {A, _, _} <- application:which_applications() ], + rabbit_log:info( + lists:flatten(["Halting Erlang VM with the following applications:~n", + [" ~p~n" || _ <- AppsLeft]]), + AppsLeft), %% Also duplicate this information to stderr, so console where %% foreground broker was running (or systemd journal) will %% contain information about graceful termination. @@ -569,6 +577,10 @@ decrypt_list([Value|Tail], Algo, Acc) -> decrypt_list(Tail, Algo, [decrypt(Value, Algo)|Acc]). stop_apps(Apps) -> + rabbit_log:info( + lists:flatten(["Stopping RabbitMQ applications and their dependencies in the following order: ~n", + [" ~p~n" || _ <- Apps]]), + lists:reverse(Apps)), ok = app_utils:stop_applications( Apps, handle_app_error(error_during_shutdown)), case lists:member(rabbit, Apps) of |
