From eb003e33054d4883975b0e6bfdbe36ee99c265dd Mon Sep 17 00:00:00 2001 From: lafirest Date: Tue, 18 Jan 2022 14:06:26 +0800 Subject: [PATCH] feat(emqx_limiter): add support for update overall limiter --- src/emqx_limiter.erl | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/emqx_limiter.erl b/src/emqx_limiter.erl index 181e5c6bf..52b830c8e 100644 --- a/src/emqx_limiter.erl +++ b/src/emqx_limiter.erl @@ -23,6 +23,7 @@ , init/4 %% XXX: Compatible with before 4.2 version , info/1 , check/2 + , update_overall_limiter/4 ]). -record(limiter, { @@ -152,3 +153,15 @@ is_message_limiter(conn_messages_in) -> true; is_message_limiter(conn_messages_routing) -> true; is_message_limiter(overall_messages_routing) -> true; is_message_limiter(_) -> false. + +update_overall_limiter(Zone, Name, Capacity, Interval) -> + case is_overall_limiter(Name) of + false -> false; + _ -> + try + esockd_limiter:update({Zone, Name}, Capacity, Interval), + true + catch _:_:_ -> + false + end + end.