diff --git a/lib-ce/emqx_modules/src/emqx_mod_acl_internal.erl b/lib-ce/emqx_modules/src/emqx_mod_acl_internal.erl index 0f999848e..8956229ea 100644 --- a/lib-ce/emqx_modules/src/emqx_mod_acl_internal.erl +++ b/lib-ce/emqx_modules/src/emqx_mod_acl_internal.erl @@ -38,26 +38,12 @@ -type(acl_rules() :: #{publish => [emqx_access_rule:rule()], subscribe => [emqx_access_rule:rule()]}). --record(acl_metrics, { - allow = 'client.acl.allow', - deny = 'client.acl.deny', - ignore = 'client.acl.ignore' - }). - --define(METRICS(Type), tl(tuple_to_list(#Type{}))). --define(METRICS(Type, K), #Type{}#Type.K). - --define(ACL_METRICS, ?METRICS(acl_metrics)). --define(ACL_METRICS(K), ?METRICS(acl_metrics, K)). - - %%-------------------------------------------------------------------- %% API %%-------------------------------------------------------------------- load(Env) -> Rules = rules_from_file(proplists:get_value(acl_file, Env)), - register_metrics(), emqx_hooks:add('client.check_acl', {?MODULE, check_acl, [Rules]}, -1). unload(_Env) -> @@ -82,15 +68,9 @@ description() -> -> {ok, allow} | {ok, deny} | ok). check_acl(Client, PubSub, Topic, _AclResult, Rules) -> case match(Client, Topic, lookup(PubSub, Rules)) of - {matched, allow} -> - emqx_metrics:inc(?ACL_METRICS(allow)), - {ok, allow}; - {matched, deny} -> - emqx_metrics:inc(?ACL_METRICS(deny)), - {ok, deny}; - nomatch -> - emqx_metrics:inc(?ACL_METRICS(ignore)), - ok + {matched, allow} -> {ok, allow}; + {matched, deny} -> {ok, deny}; + nomatch -> ok end. %%-------------------------------------------------------------------- @@ -127,9 +107,6 @@ rules_from_file(AclFile) -> #{} end. -register_metrics() -> - lists:foreach(fun emqx_metrics:ensure/1, ?ACL_METRICS). - filter(_PubSub, {allow, all}) -> true; filter(_PubSub, {deny, all}) -> @@ -142,3 +119,4 @@ filter(subscribe, {_AllowDeny, _Who, subscribe, _Topics}) -> true; filter(_PubSub, {_AllowDeny, _Who, _, _Topics}) -> false. + diff --git a/lib-ce/emqx_modules/src/emqx_modules.app.src b/lib-ce/emqx_modules/src/emqx_modules.app.src index 47a3d8888..bcb05fe31 100644 --- a/lib-ce/emqx_modules/src/emqx_modules.app.src +++ b/lib-ce/emqx_modules/src/emqx_modules.app.src @@ -1,6 +1,6 @@ {application, emqx_modules, [{description, "EMQ X Module Management"}, - {vsn, "4.3.4"}, + {vsn, "4.3.3"}, {modules, []}, {applications, [kernel,stdlib]}, {mod, {emqx_modules_app, []}}, diff --git a/lib-ce/emqx_modules/src/emqx_modules.appup.src b/lib-ce/emqx_modules/src/emqx_modules.appup.src index 8ea2c5ebe..f52ba1a61 100644 --- a/lib-ce/emqx_modules/src/emqx_modules.appup.src +++ b/lib-ce/emqx_modules/src/emqx_modules.appup.src @@ -1,45 +1,32 @@ %% -*-: erlang -*- {VSN, [ - {"4.3.3", [ - {apply, {emqx_metrics, ensure, [['client.acl.allow', 'client.acl.ignore', 'client.acl.deny']]}}, - {load_module, emqx_mod_acl_internal, brutal_purge, soft_purge, []} - ]}, {"4.3.2", [ - {load_module, emqx_mod_presence, brutal_purge, soft_purge, []}, - {apply, {emqx_metrics, ensure, [['client.acl.allow', 'client.acl.ignore', 'client.acl.deny']]}}, - {load_module, emqx_mod_acl_internal, brutal_purge, soft_purge, []} + {load_module, emqx_mod_presence, brutal_purge, soft_purge, []} ]}, {"4.3.1", [ {load_module, emqx_mod_presence, brutal_purge, soft_purge, []}, - {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []}, - {apply, {emqx_metrics, ensure, [['client.acl.allow', 'client.acl.ignore', 'client.acl.deny']]}}, - {load_module, emqx_mod_acl_internal, brutal_purge, soft_purge, []} + {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []} ]}, {"4.3.0", [ {update, emqx_mod_delayed, {advanced, []}}, {load_module, emqx_mod_presence, brutal_purge, soft_purge, []}, - {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []}, - {apply, {emqx_metrics, ensure, [['client.acl.allow', 'client.acl.ignore', 'client.acl.deny']]}}, - {load_module, emqx_mod_acl_internal, brutal_purge, soft_purge, []} + {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []} ]}, {<<".*">>, []} ], [ {"4.3.2", [ - {load_module, emqx_mod_presence, brutal_purge, soft_purge, []}, - {load_module, emqx_mod_acl_internal, brutal_purge, soft_purge, []} + {load_module, emqx_mod_presence, brutal_purge, soft_purge, []} ]}, {"4.3.1", [ {load_module, emqx_mod_presence, brutal_purge, soft_purge, []}, - {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []}, - {load_module, emqx_mod_acl_internal, brutal_purge, soft_purge, []} + {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []} ]}, {"4.3.0", [ {update, emqx_mod_delayed, {advanced, []}}, {load_module, emqx_mod_presence, brutal_purge, soft_purge, []}, - {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []}, - {load_module, emqx_mod_acl_internal, brutal_purge, soft_purge, []} + {load_module, emqx_mod_api_topic_metrics, brutal_purge, soft_purge, []} ]}, {<<".*">>, []} ]