Procházet zdrojové kódy

chore(trace): replace trace_filter by is_trace

zhongwencool před 4 roky
rodič
revize
8b31466538

+ 3 - 4
apps/emqx/include/logger.hrl

@@ -82,11 +82,10 @@
     case persistent_term:get(?TRACE_FILTER, undefined) of
         undefined -> ok;
         [] -> ok;
-        List ->
-           emqx_trace:log(List, Msg, Meta#{trace_tag => Tag})
+        List -> emqx_trace:log(List, Msg, Meta#{trace_tag => Tag})
     end,
-    ?SLOG(debug, (emqx_trace_formatter:format_meta(Meta))#{msg => Msg, trace_tag => Tag},
-        #{trace_filter => ignore})
+    ?SLOG(debug, (emqx_trace_formatter:format_meta(Meta))#{msg => Msg, tag => Tag},
+        #{is_trace => false})
     end).
 
 %% print to 'user' group leader

+ 14 - 14
apps/emqx/src/emqx_trace/emqx_trace_handler.erl

@@ -120,28 +120,28 @@ running() ->
     lists:foldl(fun filter_traces/2, [], emqx_logger:get_log_handlers(started)).
 
 -spec filter_clientid(logger:log_event(), {binary(), atom()}) -> logger:log_event() | stop.
-filter_clientid(#{level := debug, meta := #{trace_filter := _}}, _) -> stop;
-filter_clientid(#{meta := #{clientid := ClientId}} = Log, {ClientId, _Name}) -> Log;
+filter_clientid(#{meta := Meta = #{clientid := ClientId}} = Log, {MatchId, _Name}) ->
+    filter_ret(ClientId =:= MatchId andalso is_trace(Meta), Log);
 filter_clientid(_Log, _ExpectId) -> stop.
 
 -spec filter_topic(logger:log_event(), {binary(), atom()}) -> logger:log_event() | stop.
-filter_topic(#{level := debug, meta := #{trace_filter := _}}, _) -> stop;
-filter_topic(#{meta := #{topic := Topic}} = Log, {TopicFilter, _Name}) ->
-    case emqx_topic:match(Topic, TopicFilter) of
-        true -> Log;
-        false -> stop
-    end;
+filter_topic(#{meta := Meta = #{topic := Topic}} = Log, {TopicFilter, _Name}) ->
+    filter_ret(is_trace(Meta) andalso emqx_topic:match(Topic, TopicFilter), Log);
 filter_topic(_Log, _ExpectId) -> stop.
 
 -spec filter_ip_address(logger:log_event(), {string(), atom()}) -> logger:log_event() | stop.
-filter_ip_address(#{level := debug, meta := #{trace_filter := _}}, _) -> stop;
-filter_ip_address(#{meta := #{peername := Peername}} = Log, {IP, _Name}) ->
-    case lists:prefix(IP, Peername) of
-        true -> Log;
-        false -> stop
-    end;
+filter_ip_address(#{meta := Meta = #{peername := Peername}} = Log, {IP, _Name}) ->
+    filter_ret(is_trace(Meta) andalso lists:prefix(IP, Peername), Log);
 filter_ip_address(_Log, _ExpectId) -> stop.
 
+-compile({inline, [is_trace/1, filter_ret/2]}).
+%% TRUE when is_trace is missing.
+is_trace(#{is_trace := false}) -> false;
+is_trace(_) -> true.
+
+filter_ret(true, Log) -> Log;
+filter_ret(false, _Log) -> stop.
+
 filters(#{type := clientid, filter := Filter, name := Name}) ->
     [{clientid, {fun ?MODULE:filter_clientid/2, {Filter, Name}}}];
 filters(#{type := topic, filter := Filter, name := Name}) ->

+ 0 - 1
apps/emqx_authn/src/simple_authn/emqx_authn_pgsql.erl

@@ -119,7 +119,6 @@ authenticate(#{password := Password} = Credential,
         {error, Reason} ->
             ?SLOG(error, #{msg => "postgresql_query_failed",
                            resource => ResourceId,
-                           query => Query,
                            params => Params,
                            reason => Reason}),
             ignore