Преглед изворни кода

feat: support emqx_conf:update([telemetry],Conf).

某文 пре 2 година
родитељ
комит
8ccee19aa5
1 измењених фајлова са 8 додато и 1 уклоњено
  1. 8 1
      apps/emqx_telemetry/src/emqx_telemetry_config.erl

+ 8 - 1
apps/emqx_telemetry/src/emqx_telemetry_config.erl

@@ -53,7 +53,9 @@ set_telemetry_status(Status) ->
     end.
     end.
 
 
 pre_config_update(_, {set_telemetry_status, Status}, RawConf) ->
 pre_config_update(_, {set_telemetry_status, Status}, RawConf) ->
-    {ok, RawConf#{<<"enable">> => Status}}.
+    {ok, RawConf#{<<"enable">> => Status}};
+pre_config_update(_, NewConf, _OldConf) ->
+    {ok, NewConf}.
 
 
 post_config_update(
 post_config_update(
     _,
     _,
@@ -65,6 +67,11 @@ post_config_update(
     case Status of
     case Status of
         true -> emqx_telemetry:start_reporting();
         true -> emqx_telemetry:start_reporting();
         false -> emqx_telemetry:stop_reporting()
         false -> emqx_telemetry:stop_reporting()
+    end;
+post_config_update(_, _UpdateReq, NewConf, _OldConf, _AppEnvs) ->
+    case NewConf of
+        #{enable := true} -> emqx_telemetry:start_reporting();
+        #{enable := false} -> emqx_telemetry:stop_reporting()
     end.
     end.
 
 
 cfg_update(Path, Action, Params) ->
 cfg_update(Path, Action, Params) ->