diff options
| author | Hubert Plociniczak <hubert@lshift.net> | 2008-09-04 11:12:11 +0100 |
|---|---|---|
| committer | Hubert Plociniczak <hubert@lshift.net> | 2008-09-04 11:12:11 +0100 |
| commit | f584600a7cd0c3f48c43aa8d907e2e3883f0e588 (patch) | |
| tree | c97a213743f97bc78d40141a3e54ffa5be4b332c /src/rabbit.erl | |
| parent | 4cd83964b6b4d7a68e233621a5830a1d9a3af9ab (diff) | |
| download | rabbitmq-server-git-f584600a7cd0c3f48c43aa8d907e2e3883f0e588.tar.gz | |
Moved log configuration to start/0,
throw more informative errors
Diffstat (limited to 'src/rabbit.erl')
| -rw-r--r-- | src/rabbit.erl | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl index 2d309c0505..4cb11f4f37 100644 --- a/src/rabbit.erl +++ b/src/rabbit.erl @@ -67,6 +67,7 @@ start() -> try + ok = ensure_working_log_handlers(), ok = rabbit_mnesia:ensure_mnesia_dir(), ok = start_applications(?APPS) after @@ -148,9 +149,7 @@ start(normal, []) -> apply(M, F, A), io:format("done~n") end, - [{"log configuration", - fun () -> ok = ensure_working_log_handlers() end}, - {"database", + [{"database", fun () -> ok = rabbit_mnesia:init() end}, {"core processes", fun () -> @@ -253,16 +252,26 @@ ensure_working_log_handlers() -> ensure_working_log_handler(OldFHandler, NewFHandler, TTYHandler, LogLocation, Handlers) -> - case LogLocation of + case LogLocation of undefined -> ok; - tty -> true = lists:member(TTYHandler, Handlers), ok; + tty -> case lists:member(TTYHandler, Handlers) of + true -> ok; + false -> + throw({error, {cannot_log_to_tty, + TTYHandler, not_installed}}) + end; _ -> case lists:member(NewFHandler, Handlers) of true -> ok; - false -> rotate_logs(LogLocation, "", - OldFHandler, NewFHandler) + false -> case rotate_logs(LogLocation, "", + OldFHandler, NewFHandler) of + ok -> ok; + {error, Reason} -> + throw({error, {cannot_log_to_file, + LogLocation, Reason}}) + end end end. - + maybe_insert_default_data() -> case rabbit_mnesia:is_db_empty() of true -> insert_default_data(); |
