diff options
| author | Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> | 2020-02-10 17:58:37 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-02-10 17:58:37 +0100 |
| commit | 98d10fc2f943113df3d296be8cc140239ebdeac0 (patch) | |
| tree | a2f0063e7cfd997cd4a577eff899f39da4b184b7 | |
| parent | cb068d565607146644e07bf42a6c7d323f23256e (diff) | |
| parent | 5895cee2108e4972f89944e409bedff327e31cbf (diff) | |
| download | rabbitmq-server-git-98d10fc2f943113df3d296be8cc140239ebdeac0.tar.gz | |
Merge pull request #2239 from rabbitmq/fix-setting-log-level-without-file
Small refactor for 15dfe7b1bf63c6f6b9940738b219f08bcc241cbd
| -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 |
