fix(emqx_telemetry): Decorate RPC calls
This commit is contained in:
parent
9602ce0250
commit
a9673d7d2d
|
@ -256,7 +256,7 @@ uptime() ->
|
||||||
nodes_uuid() ->
|
nodes_uuid() ->
|
||||||
Nodes = lists:delete(node(), mria_mnesia:running_nodes()),
|
Nodes = lists:delete(node(), mria_mnesia:running_nodes()),
|
||||||
lists:foldl(fun(Node, Acc) ->
|
lists:foldl(fun(Node, Acc) ->
|
||||||
case rpc:call(Node, ?MODULE, get_uuid, []) of
|
case emqx_modules_proto_v1:get_uuid(Node) of
|
||||||
{badrpc, _Reason} ->
|
{badrpc, _Reason} ->
|
||||||
Acc;
|
Acc;
|
||||||
{ok, UUID} ->
|
{ok, UUID} ->
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
%%--------------------------------------------------------------------
|
||||||
|
%%Copyright (c) 2022 EMQ Technologies Co., Ltd. All Rights Reserved.
|
||||||
|
%%
|
||||||
|
%% Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
%% you may not use this file except in compliance with the License.
|
||||||
|
%% You may obtain a copy of the License at
|
||||||
|
%%
|
||||||
|
%% http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
%%
|
||||||
|
%% Unless required by applicable law or agreed to in writing, software
|
||||||
|
%% distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
%% See the License for the specific language governing permissions and
|
||||||
|
%% limitations under the License.
|
||||||
|
%%--------------------------------------------------------------------
|
||||||
|
|
||||||
|
-module(emqx_modules_proto_v1).
|
||||||
|
|
||||||
|
-behaviour(emqx_bpapi).
|
||||||
|
|
||||||
|
-export([ introduced_in/0
|
||||||
|
|
||||||
|
, get_uuid/1
|
||||||
|
]).
|
||||||
|
|
||||||
|
-include_lib("emqx/include/bpapi.hrl").
|
||||||
|
|
||||||
|
introduced_in() ->
|
||||||
|
"5.0.0".
|
||||||
|
|
||||||
|
-spec get_uuid(node()) -> {ok, binary()} | emqx_rpc:badrpc().
|
||||||
|
get_uuid(Node) ->
|
||||||
|
rpc:call(Node, emqx_telemetry, get_uuid, []).
|
|
@ -44,7 +44,10 @@ t_uuid(_) ->
|
||||||
emqx_telemetry:disable(),
|
emqx_telemetry:disable(),
|
||||||
emqx_telemetry:enable(),
|
emqx_telemetry:enable(),
|
||||||
{ok, UUID3} = emqx_telemetry:get_uuid(),
|
{ok, UUID3} = emqx_telemetry:get_uuid(),
|
||||||
?assertEqual(UUID2, UUID3).
|
{ok, UUID4} = emqx_modules_proto_v1:get_uuid(node()),
|
||||||
|
?assertEqual(UUID2, UUID3),
|
||||||
|
?assertEqual(UUID3, UUID4),
|
||||||
|
?assertMatch({badrpc, nodedown}, emqx_modules_proto_v1:get_uuid('fake@node')).
|
||||||
|
|
||||||
t_official_version(_) ->
|
t_official_version(_) ->
|
||||||
true = emqx_telemetry:official_version("0.0.0"),
|
true = emqx_telemetry:official_version("0.0.0"),
|
||||||
|
|
Loading…
Reference in New Issue