ソースを参照

Helper funcs for adding proc meta-data

terry-xiaoyu 7 年 前
コミット
82b8047349

+ 1 - 1
include/logger.hrl

@@ -7,7 +7,7 @@
 
 -define(LOG(Level, Format, Args),
         begin
-          (logger:log(Level, #{},#{report_cb =>
+          (logger:log(Level,#{},#{report_cb =>
                                     fun(_) ->
                                         {?LOG_HEADER ++ " "++ (Format), (Args)}
                                     end}))

+ 1 - 1
src/emqx_connection.erl

@@ -153,7 +153,7 @@ init([Transport, RawSocket, Options]) ->
             ok = emqx_gc:init(GcPolicy),
             ok = emqx_misc:init_proc_mng_policy(Zone),
 
-            emqx_logger:add_proc_metadata(#{peername => esockd_net:format(Peername)}),
+            emqx_logger:add_metadata_peername(esockd_net:format(Peername)),
             gen_server:enter_loop(?MODULE, [{hibernate_after, IdleTimout}],
                                   State, self(), IdleTimout);
         {error, Reason} ->

+ 8 - 0
src/emqx_logger.erl

@@ -22,6 +22,7 @@
 -export([error/1, error/2, error/3]).
 -export([critical/1, critical/2, critical/3]).
 
+-export([add_metadata_peername/1, add_metadata_client_id/1]).
 -export([add_proc_metadata/1]).
 
 debug(Msg) ->
@@ -59,6 +60,13 @@ critical(Format, Args) ->
 critical(Metadata, Format, Args) when is_map(Metadata) ->
     logger:critical(Format, Args, Metadata).
 
+
+add_metadata_client_id(ClientId) ->
+    add_proc_metadata(#{client_id => ClientId}).
+
+add_metadata_peername(Peername) ->
+    add_proc_metadata(#{peername => Peername}).
+
 add_proc_metadata(Meta) ->
     case logger:get_process_metadata() of
         undefined ->

+ 1 - 1
src/emqx_protocol.erl

@@ -286,7 +286,7 @@ process_packet(?CONNECT_PACKET(
                                        client_id   = ClientId,
                                        username    = Username,
                                        password    = Password} = Connect), PState) ->
-    emqx_logger:add_proc_metadata(#{client_id => ClientId}),
+    emqx_logger:add_metadata_client_id(ClientId),
     %% TODO: Mountpoint...
     %% Msg -> emqx_mountpoint:mount(MountPoint, Msg)
     WillMsg = make_will_msg(Connect),

+ 1 - 1
src/emqx_ws_connection.erl

@@ -136,7 +136,7 @@ websocket_init(#state{request = Req, options = Options}) ->
     IdleTimout = emqx_zone:get_env(Zone, idle_timeout, 30000),
     lists:foreach(fun(Stat) -> put(Stat, 0) end, ?SOCK_STATS),
 
-    emqx_logger:add_proc_metadata(#{peername => esockd_net:format(Peername)}),
+    emqx_logger:add_metadata_peername(esockd_net:format(Peername)),
     {ok, #state{peername     = Peername,
                 sockname     = Sockname,
                 parser_state = ParserState,