Просмотр исходного кода

chore(exhook): deinit registray after application stopped

JianBo He 5 лет назад
Родитель
Сommit
6bf15c6a2f

+ 4 - 0
apps/emqx_exhook/src/emqx_exhook_app.erl

@@ -57,6 +57,7 @@ prep_stop(State) ->
     emqx_ctl:unregister_command(exhook),
     _ = unload_exhooks(),
     ok = unload_all_servers(),
+    _ = deinit_hook_registray(),
     State.
 
 stop(_State) ->
@@ -92,6 +93,9 @@ unload_exhooks() ->
     [emqx:unhook(Name, {M, F}) ||
      {Name, {M, F, _A}, _} <- ets:tab2list(?REGISTRAY)].
 
+deinit_hook_registray() ->
+    ets:delete(?REGISTRAY).
+
 search_exhooks() ->
     search_exhooks(ignore_lib_apps(application:loaded_applications())).
 search_exhooks(Apps) ->

+ 4 - 7
apps/emqx_exhook/src/emqx_exhook_handler.erl

@@ -77,15 +77,12 @@
          , {'session.discarded',   {?MODULE, on_session_discarded,    []}}
          , {'session.takeovered',  {?MODULE, on_session_takeovered,   []}}
          , {'session.terminated',  {?MODULE, on_session_terminated,   []}}
-         %]).
-         , {'message.publish',     {?MODULE, on_message_publish,   []}}
-         , {'message.delivered',   {?MODULE, on_message_delivered, []}}
-         , {'message.acked',       {?MODULE, on_message_acked,     []}}
-         , {'message.dropped',     {?MODULE, on_message_dropped,   []}}
+         , {'message.publish',     {?MODULE, on_message_publish,      []}}
+         , {'message.delivered',   {?MODULE, on_message_delivered,    []}}
+         , {'message.acked',       {?MODULE, on_message_acked,        []}}
+         , {'message.dropped',     {?MODULE, on_message_dropped,      []}}
          ]).
 
-
-
 %%--------------------------------------------------------------------
 %% Clients
 %%--------------------------------------------------------------------