fix: increase resource metrics using the resource id
This commit is contained in:
parent
d3950b9534
commit
75adba0781
|
@ -133,9 +133,9 @@ drop_bridge(Name) ->
|
||||||
%% ===================================================================
|
%% ===================================================================
|
||||||
%% When use this bridge as a data source, ?MODULE:on_message_received will be called
|
%% When use this bridge as a data source, ?MODULE:on_message_received will be called
|
||||||
%% if the bridge received msgs from the remote broker.
|
%% if the bridge received msgs from the remote broker.
|
||||||
on_message_received(Msg, HookPoint, InstId) ->
|
on_message_received(Msg, HookPoint, ResId) ->
|
||||||
emqx_resource:inc_matched(InstId),
|
emqx_resource:inc_matched(ResId),
|
||||||
emqx_resource:inc_success(InstId),
|
emqx_resource:inc_success(ResId),
|
||||||
emqx:run_hook(HookPoint, [Msg]).
|
emqx:run_hook(HookPoint, [Msg]).
|
||||||
|
|
||||||
%% ===================================================================
|
%% ===================================================================
|
||||||
|
@ -206,11 +206,12 @@ make_sub_confs(EmptyMap, _) when map_size(EmptyMap) == 0 ->
|
||||||
make_sub_confs(undefined, _) ->
|
make_sub_confs(undefined, _) ->
|
||||||
undefined;
|
undefined;
|
||||||
make_sub_confs(SubRemoteConf, InstId) ->
|
make_sub_confs(SubRemoteConf, InstId) ->
|
||||||
|
ResId = emqx_resource_manager:manager_id_to_resource_id(InstId),
|
||||||
case maps:take(hookpoint, SubRemoteConf) of
|
case maps:take(hookpoint, SubRemoteConf) of
|
||||||
error ->
|
error ->
|
||||||
SubRemoteConf;
|
SubRemoteConf;
|
||||||
{HookPoint, SubConf} ->
|
{HookPoint, SubConf} ->
|
||||||
MFA = {?MODULE, on_message_received, [HookPoint, InstId]},
|
MFA = {?MODULE, on_message_received, [HookPoint, ResId]},
|
||||||
SubConf#{on_message_received => MFA}
|
SubConf#{on_message_received => MFA}
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|
|
@ -38,8 +38,12 @@
|
||||||
list_group/1,
|
list_group/1,
|
||||||
ets_lookup/1,
|
ets_lookup/1,
|
||||||
get_metrics/1,
|
get_metrics/1,
|
||||||
reset_metrics/1,
|
reset_metrics/1
|
||||||
set_resource_status_connecting/1
|
]).
|
||||||
|
|
||||||
|
-export([
|
||||||
|
set_resource_status_connecting/1,
|
||||||
|
manager_id_to_resource_id/1
|
||||||
]).
|
]).
|
||||||
|
|
||||||
% Server
|
% Server
|
||||||
|
@ -64,6 +68,13 @@
|
||||||
%% API
|
%% API
|
||||||
%%------------------------------------------------------------------------------
|
%%------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
make_manager_id(ResId) ->
|
||||||
|
emqx_resource:generate_id(ResId).
|
||||||
|
|
||||||
|
manager_id_to_resource_id(MgrId) ->
|
||||||
|
[ResId, _Index] = string:split(MgrId, ":", trailing),
|
||||||
|
ResId.
|
||||||
|
|
||||||
%% @doc Called from emqx_resource when starting a resource instance.
|
%% @doc Called from emqx_resource when starting a resource instance.
|
||||||
%%
|
%%
|
||||||
%% Triggers the emqx_resource_manager_sup supervisor to actually create
|
%% Triggers the emqx_resource_manager_sup supervisor to actually create
|
||||||
|
@ -455,9 +466,6 @@ stop_resource(Data) ->
|
||||||
_ = maybe_clear_alarm(Data#data.id),
|
_ = maybe_clear_alarm(Data#data.id),
|
||||||
ok.
|
ok.
|
||||||
|
|
||||||
make_manager_id(ResId) ->
|
|
||||||
emqx_resource:generate_id(ResId).
|
|
||||||
|
|
||||||
make_test_id() ->
|
make_test_id() ->
|
||||||
RandId = iolist_to_binary(emqx_misc:gen_id(16)),
|
RandId = iolist_to_binary(emqx_misc:gen_id(16)),
|
||||||
<<?TEST_ID_PREFIX, RandId/binary>>.
|
<<?TEST_ID_PREFIX, RandId/binary>>.
|
||||||
|
|
Loading…
Reference in New Issue