diff options
| -rw-r--r-- | src/rabbit_lager.erl | 54 |
1 files changed, 25 insertions, 29 deletions
diff --git a/src/rabbit_lager.erl b/src/rabbit_lager.erl index 547dd9be7e..aa226bce56 100644 --- a/src/rabbit_lager.erl +++ b/src/rabbit_lager.erl @@ -444,7 +444,29 @@ default_handler_config(lager_file_backend) -> {date, ""}, {size, 0}]. -default_config_value(level) -> info; +default_config_value(level) -> + LogConfig = application:get_env(rabbit, log, []), + FoldFun = fun + ({_, Cfg}, LL) when is_list(Cfg) -> + NewLL = proplists:get_value(level, Cfg, LL), + case LL of + undefined -> + NewLL; + _ -> + MoreVerbose = lager_util:level_to_num(NewLL) > lager_util:level_to_num(LL), + case MoreVerbose of + true -> NewLL; + false -> LL + end + end; + (_, LL) -> + LL + end, + FoundLL = lists:foldl(FoldFun, undefined, LogConfig), + case FoundLL of + undefined -> info; + _ -> FoundLL + end; default_config_value({formatter_config, console}) -> EOL = case application:get_env(lager, colored) of {ok, true} -> "\e[0m\r\n"; @@ -561,33 +583,7 @@ generate_lager_sinks(SinkNames, SinkConfigs) -> #{global := LogLevel} -> LogLevel; _ -> - LogConfig = application:get_env(rabbit, log, []), - FoundLL = - lists:foldl( - fun - ({_, Cfg}, LL) when is_list(Cfg) -> - NewLL = proplists:get_value( - level, Cfg, LL), - case LL of - undefined -> - NewLL; - _ -> - MoreVerbose = - lager_util:level_to_num(NewLL) - > - lager_util:level_to_num(LL), - case MoreVerbose of - true -> NewLL; - false -> LL - end - end; - (_, LL) -> - LL - end, undefined, LogConfig), - case FoundLL of - undefined -> default_config_value(level); - _ -> FoundLL - end + default_config_value(level) end, lists:map(fun(SinkName) -> SinkConfig = proplists:get_value(SinkName, SinkConfigs, []), @@ -608,7 +604,7 @@ generate_lager_sinks(SinkNames, SinkConfigs) -> undefined -> %% Create a new file handler. %% `info` is a default level here. - FileLevel = proplists:get_value(level, SinkConfig, default_config_value(level)), + FileLevel = proplists:get_value(level, SinkConfig, DefaultLogLevel), generate_lager_handlers([{file, [{file, File}, {level, FileLevel}]}]); FileHandler -> %% Replace a filename in the handler |
