Skip to content

Commit

Permalink
Redirected slave logs to ct master logs
Browse files Browse the repository at this point in the history
  • Loading branch information
Albert Schimpf committed Nov 14, 2019
1 parent f98fa12 commit 51d93a5
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 1 deletion.
14 changes: 14 additions & 0 deletions test/utils/ct_redirect_handler.erl
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
%% redirects log messages to ct:log

-module(ct_redirect_handler).

%% API
-export([log/2]).

log(LogEvent, _Config) ->
CtMaster = application:get_env(antidote, ct_master, undefined),
#{msg := Message} = LogEvent,
case Message of
{Msg, Format} -> _ = rpc:call(CtMaster, ct, log, [Msg, Format]);
_ -> _ = rpc:call(CtMaster, ct, log, ["~p", [Message]])
end.
14 changes: 13 additions & 1 deletion test/utils/test_utils.erl
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,7 @@ start_node(Name, Config) ->
ok = rpc:call(Node, application, load, [antidote_stats]),
ok = rpc:call(Node, application, load, [ranch]),
ok = rpc:call(Node, application, load, [antidote]),
ok = rpc:call(Node, application, load, [lager]),

%% get remote working dir of node
{ok, NodeWorkingDir} = rpc:call(Node, file, get_cwd, []),
Expand Down Expand Up @@ -168,6 +169,16 @@ start_node(Name, Config) ->
%% legacy lager folder until lager is removed
LagerRoot = filename:join([NodeWorkingDir, Node, "lager"]),
ok = rpc:call(Node, application, set_env, [lager, log_root, LagerRoot]),
ok = rpc:call(Node, application, set_env, [lager, error_logger_whitelist, [error_logger]]),
ok = rpc:call(Node, application, set_env, [lager, error_logger_redirect, false]),
ok = rpc:call(Node, application, set_env, [lager, crash_log, false]),
ok = rpc:call(Node, application, set_env, [lager, handlers, [{antidote_lager_backend, [debug]}]]),
ok = rpc:call(Node, application, set_env, [lager, logger, log_config(LogRoot)]),

%% redirect slave logs to ct_master logs
ok = rpc:call(Node, application, set_env, [antidote, ct_master, node()]),
ConfLog = #{level => debug, formatter => {logger_formatter, #{single_line => true, max_size => 2048}}, config => #{type => standard_io}},
_ = rpc:call(Node, logger, add_handler, [antidote_redirect_ct, ct_redirect_handler, ConfLog]),


%% ANTIDOTE Configuration
Expand Down Expand Up @@ -495,7 +506,8 @@ log_config(LogDir) ->

InfoConfig = #{level => info,
formatter => {logger_formatter, #{single_line => true, max_size => 2048}},
config => #{type => {file, filename:join(LogDir, "info.log")}}},
config => #{type => {file, filename:join(LogDir, "info.log")}}
},

NoticeConfig = #{level => notice,
formatter => {logger_formatter, #{single_line => true, max_size => 2048}},
Expand Down

0 comments on commit 51d93a5

Please sign in to comment.