docs: make sure there is a summary for all API endpoints
Many HTTP API endpoints did not have a summary when looking at the API docs at "http://emqx_host_name:18083/api-docs". This has been fixed by making sure there is a summary corresponding to all endpoints. Fixes: https://emqx.atlassian.net/browse/EMQX-9767
This commit is contained in:
parent
ba72695f04
commit
ab8b8ccaad
|
@ -2,7 +2,7 @@
|
|||
{application, emqx_dashboard, [
|
||||
{description, "EMQX Web Dashboard"},
|
||||
% strict semver, bump manually!
|
||||
{vsn, "5.0.20"},
|
||||
{vsn, "5.0.21"},
|
||||
{modules, []},
|
||||
{registered, [emqx_dashboard_sup]},
|
||||
{applications, [kernel, stdlib, mnesia, minirest, emqx, emqx_ctl]},
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
-include_lib("emqx/include/http_api.hrl").
|
||||
-include("emqx_dashboard.hrl").
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-export([
|
||||
api_spec/0,
|
||||
|
@ -50,7 +51,7 @@ schema("/error_codes") ->
|
|||
'operationId' => error_codes,
|
||||
get => #{
|
||||
security => [],
|
||||
description => <<"API Error Codes">>,
|
||||
description => ?DESC(error_codes),
|
||||
tags => [<<"Error Codes">>],
|
||||
responses => #{
|
||||
200 => hoconsc:array(hoconsc:ref(?MODULE, error_code))
|
||||
|
@ -62,7 +63,7 @@ schema("/error_codes/:code") ->
|
|||
'operationId' => error_code,
|
||||
get => #{
|
||||
security => [],
|
||||
description => <<"API Error Codes">>,
|
||||
description => ?DESC(error_codes_u),
|
||||
tags => [<<"Error Codes">>],
|
||||
parameters => [
|
||||
{code,
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
|
||||
-include("emqx_dashboard.hrl").
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("hocon/include/hocon_types.hrl").
|
||||
|
||||
-behaviour(minirest_api).
|
||||
|
||||
|
@ -38,7 +39,7 @@ schema("/monitor") ->
|
|||
'operationId' => monitor,
|
||||
get => #{
|
||||
tags => [<<"Metrics">>],
|
||||
desc => <<"List monitor data.">>,
|
||||
description => ?DESC(list_monitor),
|
||||
parameters => [parameter_latest()],
|
||||
responses => #{
|
||||
200 => hoconsc:mk(hoconsc:array(hoconsc:ref(sampler)), #{}),
|
||||
|
@ -51,7 +52,7 @@ schema("/monitor/nodes/:node") ->
|
|||
'operationId' => monitor,
|
||||
get => #{
|
||||
tags => [<<"Metrics">>],
|
||||
desc => <<"List the monitor data on the node.">>,
|
||||
description => ?DESC(list_monitor_node),
|
||||
parameters => [parameter_node(), parameter_latest()],
|
||||
responses => #{
|
||||
200 => hoconsc:mk(hoconsc:array(hoconsc:ref(sampler)), #{}),
|
||||
|
@ -64,7 +65,7 @@ schema("/monitor_current") ->
|
|||
'operationId' => monitor_current,
|
||||
get => #{
|
||||
tags => [<<"Metrics">>],
|
||||
desc => <<"Current status. Gauge and rate.">>,
|
||||
description => ?DESC(current_status),
|
||||
responses => #{
|
||||
200 => hoconsc:mk(hoconsc:ref(sampler_current), #{})
|
||||
}
|
||||
|
@ -75,7 +76,7 @@ schema("/monitor_current/nodes/:node") ->
|
|||
'operationId' => monitor_current,
|
||||
get => #{
|
||||
tags => [<<"Metrics">>],
|
||||
desc => <<"Node current status. Gauge and rate.">>,
|
||||
description => ?DESC(current_status_node),
|
||||
parameters => [parameter_node()],
|
||||
responses => #{
|
||||
200 => hoconsc:mk(hoconsc:ref(sampler_current), #{}),
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{application, emqx_management, [
|
||||
{description, "EMQX Management API and CLI"},
|
||||
% strict semver, bump manually!
|
||||
{vsn, "5.0.21"},
|
||||
{vsn, "5.0.22"},
|
||||
{modules, []},
|
||||
{registered, [emqx_management_sup]},
|
||||
{applications, [kernel, stdlib, emqx_plugins, minirest, emqx, emqx_ctl]},
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
-behaviour(minirest_api).
|
||||
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-export([api_spec/0, fields/1, paths/0, schema/1, namespace/0]).
|
||||
-export([api_key/2, api_key_by_name/2]).
|
||||
|
@ -36,14 +37,14 @@ schema("/api_key") ->
|
|||
#{
|
||||
'operationId' => api_key,
|
||||
get => #{
|
||||
description => "Return api_key list",
|
||||
description => ?DESC(api_key_list),
|
||||
tags => ?TAGS,
|
||||
responses => #{
|
||||
200 => delete([api_secret], fields(app))
|
||||
}
|
||||
},
|
||||
post => #{
|
||||
description => "Create new api_key",
|
||||
description => ?DESC(create_new_api_key),
|
||||
tags => ?TAGS,
|
||||
'requestBody' => delete([created_at, api_key, api_secret], fields(app)),
|
||||
responses => #{
|
||||
|
@ -56,7 +57,7 @@ schema("/api_key/:name") ->
|
|||
#{
|
||||
'operationId' => api_key_by_name,
|
||||
get => #{
|
||||
description => "Return the specific api_key",
|
||||
description => ?DESC(get_api_key),
|
||||
tags => ?TAGS,
|
||||
parameters => [hoconsc:ref(name)],
|
||||
responses => #{
|
||||
|
@ -65,7 +66,7 @@ schema("/api_key/:name") ->
|
|||
}
|
||||
},
|
||||
put => #{
|
||||
description => "Update the specific api_key",
|
||||
description => ?DESC(update_api_key),
|
||||
tags => ?TAGS,
|
||||
parameters => [hoconsc:ref(name)],
|
||||
'requestBody' => delete([created_at, api_key, api_secret, name], fields(app)),
|
||||
|
@ -75,7 +76,7 @@ schema("/api_key/:name") ->
|
|||
}
|
||||
},
|
||||
delete => #{
|
||||
description => "Delete the specific api_key",
|
||||
description => ?DESC(delete_api_key),
|
||||
tags => ?TAGS,
|
||||
parameters => [hoconsc:ref(name)],
|
||||
responses => #{
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("emqx/include/emqx.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-include_lib("emqx/include/logger.hrl").
|
||||
|
||||
|
@ -101,7 +102,7 @@ schema("/clients") ->
|
|||
#{
|
||||
'operationId' => clients,
|
||||
get => #{
|
||||
description => <<"List clients">>,
|
||||
description => ?DESC(list_clients),
|
||||
tags => ?TAGS,
|
||||
parameters => [
|
||||
hoconsc:ref(emqx_dashboard_swagger, page),
|
||||
|
@ -214,7 +215,7 @@ schema("/clients/:clientid") ->
|
|||
#{
|
||||
'operationId' => client,
|
||||
get => #{
|
||||
description => <<"Get clients info by client ID">>,
|
||||
description => ?DESC(clients_info_from_id),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
responses => #{
|
||||
|
@ -225,7 +226,7 @@ schema("/clients/:clientid") ->
|
|||
}
|
||||
},
|
||||
delete => #{
|
||||
description => <<"Kick out client by client ID">>,
|
||||
description => ?DESC(kick_client_id),
|
||||
tags => ?TAGS,
|
||||
parameters => [
|
||||
{clientid, hoconsc:mk(binary(), #{in => path})}
|
||||
|
@ -242,7 +243,7 @@ schema("/clients/:clientid/authorization/cache") ->
|
|||
#{
|
||||
'operationId' => authz_cache,
|
||||
get => #{
|
||||
description => <<"Get client authz cache in the cluster.">>,
|
||||
description => ?DESC(get_authz_cache),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
responses => #{
|
||||
|
@ -253,7 +254,7 @@ schema("/clients/:clientid/authorization/cache") ->
|
|||
}
|
||||
},
|
||||
delete => #{
|
||||
description => <<"Clean client authz cache in the cluster.">>,
|
||||
description => ?DESC(clean_authz_cache),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
responses => #{
|
||||
|
@ -268,7 +269,7 @@ schema("/clients/:clientid/subscriptions") ->
|
|||
#{
|
||||
'operationId' => subscriptions,
|
||||
get => #{
|
||||
description => <<"Get client subscriptions">>,
|
||||
description => ?DESC(get_client_subs),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
responses => #{
|
||||
|
@ -285,7 +286,7 @@ schema("/clients/:clientid/subscribe") ->
|
|||
#{
|
||||
'operationId' => subscribe,
|
||||
post => #{
|
||||
description => <<"Subscribe">>,
|
||||
description => ?DESC(subscribe),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
'requestBody' => hoconsc:mk(hoconsc:ref(?MODULE, subscribe)),
|
||||
|
@ -301,7 +302,7 @@ schema("/clients/:clientid/subscribe/bulk") ->
|
|||
#{
|
||||
'operationId' => subscribe_batch,
|
||||
post => #{
|
||||
description => <<"Subscribe">>,
|
||||
description => ?DESC(subscribe_g),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
'requestBody' => hoconsc:mk(hoconsc:array(hoconsc:ref(?MODULE, subscribe))),
|
||||
|
@ -317,7 +318,7 @@ schema("/clients/:clientid/unsubscribe") ->
|
|||
#{
|
||||
'operationId' => unsubscribe,
|
||||
post => #{
|
||||
description => <<"Unsubscribe">>,
|
||||
description => ?DESC(unsubscribe),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
'requestBody' => hoconsc:mk(hoconsc:ref(?MODULE, unsubscribe)),
|
||||
|
@ -333,7 +334,7 @@ schema("/clients/:clientid/unsubscribe/bulk") ->
|
|||
#{
|
||||
'operationId' => unsubscribe_batch,
|
||||
post => #{
|
||||
description => <<"Unsubscribe">>,
|
||||
description => ?DESC(unsubscribe_g),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
'requestBody' => hoconsc:mk(hoconsc:array(hoconsc:ref(?MODULE, unsubscribe))),
|
||||
|
@ -349,7 +350,7 @@ schema("/clients/:clientid/keepalive") ->
|
|||
#{
|
||||
'operationId' => set_keepalive,
|
||||
put => #{
|
||||
description => <<"Set the online client keepalive by seconds">>,
|
||||
description => ?DESC(set_keepalive_seconds),
|
||||
tags => ?TAGS,
|
||||
parameters => [{clientid, hoconsc:mk(binary(), #{in => path})}],
|
||||
'requestBody' => hoconsc:mk(hoconsc:ref(?MODULE, keepalive)),
|
||||
|
|
|
@ -39,7 +39,7 @@ schema("/cluster") ->
|
|||
#{
|
||||
'operationId' => cluster_info,
|
||||
get => #{
|
||||
description => "Get cluster info",
|
||||
desc => ?DESC(get_cluster_info),
|
||||
tags => [<<"Cluster">>],
|
||||
responses => #{
|
||||
200 => [
|
||||
|
@ -54,7 +54,7 @@ schema("/cluster/:node/invite") ->
|
|||
#{
|
||||
'operationId' => invite_node,
|
||||
put => #{
|
||||
description => "Invite node to cluster",
|
||||
desc => ?DESC(invite_node),
|
||||
tags => [<<"Cluster">>],
|
||||
parameters => [hoconsc:ref(node)],
|
||||
responses => #{
|
||||
|
@ -67,7 +67,7 @@ schema("/cluster/:node/force_leave") ->
|
|||
#{
|
||||
'operationId' => force_leave,
|
||||
delete => #{
|
||||
description => "Force leave node from cluster",
|
||||
desc => ?DESC(force_remove_node),
|
||||
tags => [<<"Cluster">>],
|
||||
parameters => [hoconsc:ref(node)],
|
||||
responses => #{
|
||||
|
|
|
@ -67,8 +67,7 @@ schema("/configs") ->
|
|||
'operationId' => configs,
|
||||
get => #{
|
||||
tags => ?TAGS,
|
||||
description =>
|
||||
<<"Get all the configurations of the specified node, including hot and non-hot updatable items.">>,
|
||||
description => ?DESC(get_conf_node),
|
||||
parameters => [
|
||||
{node,
|
||||
hoconsc:mk(
|
||||
|
@ -77,8 +76,7 @@ schema("/configs") ->
|
|||
in => query,
|
||||
required => false,
|
||||
example => <<"emqx@127.0.0.1">>,
|
||||
desc =>
|
||||
<<"Node's name: If you do not fill in the fields, this node will be used by default.">>
|
||||
description => ?DESC(node_name)
|
||||
}
|
||||
)}
|
||||
],
|
||||
|
@ -95,12 +93,7 @@ schema("/configs_reset/:rootname") ->
|
|||
'operationId' => config_reset,
|
||||
post => #{
|
||||
tags => ?TAGS,
|
||||
description =>
|
||||
<<
|
||||
"Reset the config entry specified by the query string parameter `conf_path`.<br/>"
|
||||
"- For a config entry that has default value, this resets it to the default value;\n"
|
||||
"- For a config entry that has no default value, an error 400 will be returned"
|
||||
>>,
|
||||
description => ?DESC(rest_conf_query),
|
||||
%% We only return "200" rather than the new configs that has been changed, as
|
||||
%% the schema of the changed configs is depends on the request parameter
|
||||
%% `conf_path`, it cannot be defined here.
|
||||
|
@ -134,12 +127,12 @@ schema("/configs/global_zone") ->
|
|||
'operationId' => global_zone_configs,
|
||||
get => #{
|
||||
tags => ?TAGS,
|
||||
description => <<"Get the global zone configs">>,
|
||||
description => ?DESC(get_global_zone_configs),
|
||||
responses => #{200 => Schema}
|
||||
},
|
||||
put => #{
|
||||
tags => ?TAGS,
|
||||
description => <<"Update globbal zone configs">>,
|
||||
description => ?DESC(update_globar_zone_configs),
|
||||
'requestBody' => Schema,
|
||||
responses => #{
|
||||
200 => Schema,
|
||||
|
@ -153,7 +146,7 @@ schema("/configs/limiter") ->
|
|||
'operationId' => limiter,
|
||||
get => #{
|
||||
tags => ?TAGS,
|
||||
description => <<"Get the node-level limiter configs">>,
|
||||
description => ?DESC(get_node_level_limiter_congigs),
|
||||
responses => #{
|
||||
200 => hoconsc:mk(hoconsc:ref(emqx_limiter_schema, limiter)),
|
||||
404 => emqx_dashboard_swagger:error_codes(['NOT_FOUND'], <<"config not found">>)
|
||||
|
@ -161,7 +154,7 @@ schema("/configs/limiter") ->
|
|||
},
|
||||
put => #{
|
||||
tags => ?TAGS,
|
||||
description => <<"Update the node-level limiter configs">>,
|
||||
description => ?DESC(update_node_level_limiter_congigs),
|
||||
'requestBody' => hoconsc:mk(hoconsc:ref(emqx_limiter_schema, limiter)),
|
||||
responses => #{
|
||||
200 => hoconsc:mk(hoconsc:ref(emqx_limiter_schema, limiter)),
|
||||
|
@ -172,15 +165,22 @@ schema("/configs/limiter") ->
|
|||
};
|
||||
schema(Path) ->
|
||||
{RootKey, {_Root, Schema}} = find_schema(Path),
|
||||
GetDesc = iolist_to_binary([
|
||||
<<"Get the sub-configurations under *">>,
|
||||
RootKey,
|
||||
<<"*">>
|
||||
]),
|
||||
PutDesc = iolist_to_binary([
|
||||
<<"Update the sub-configurations under *">>,
|
||||
RootKey,
|
||||
<<"*">>
|
||||
]),
|
||||
#{
|
||||
'operationId' => config,
|
||||
get => #{
|
||||
tags => ?TAGS,
|
||||
description => iolist_to_binary([
|
||||
<<"Get the sub-configurations under *">>,
|
||||
RootKey,
|
||||
<<"*">>
|
||||
]),
|
||||
desc => GetDesc,
|
||||
summary => GetDesc,
|
||||
responses => #{
|
||||
200 => Schema,
|
||||
404 => emqx_dashboard_swagger:error_codes(['NOT_FOUND'], <<"config not found">>)
|
||||
|
@ -188,11 +188,8 @@ schema(Path) ->
|
|||
},
|
||||
put => #{
|
||||
tags => ?TAGS,
|
||||
description => iolist_to_binary([
|
||||
<<"Update the sub-configurations under *">>,
|
||||
RootKey,
|
||||
<<"*">>
|
||||
]),
|
||||
desc => PutDesc,
|
||||
summary => PutDesc,
|
||||
'requestBody' => Schema,
|
||||
responses => #{
|
||||
200 => Schema,
|
||||
|
|
|
@ -66,7 +66,7 @@ schema("/listeners_status") ->
|
|||
'operationId' => listener_type_status,
|
||||
get => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"List all running node's listeners live status. group by listener type">>,
|
||||
description => ?DESC(list_node_live_statuses),
|
||||
responses => #{
|
||||
200 =>
|
||||
emqx_dashboard_swagger:schema_with_example(
|
||||
|
@ -81,7 +81,7 @@ schema("/listeners") ->
|
|||
'operationId' => list_listeners,
|
||||
get => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"List all running node's listeners for the specified type.">>,
|
||||
description => ?DESC(list_listeners),
|
||||
parameters => [
|
||||
{type,
|
||||
?HOCON(
|
||||
|
@ -99,7 +99,7 @@ schema("/listeners") ->
|
|||
},
|
||||
post => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"Create the specified listener on all nodes.">>,
|
||||
description => ?DESC(create_on_all_nodes),
|
||||
parameters => [],
|
||||
'requestBody' => create_listener_schema(#{bind => true}),
|
||||
responses => #{
|
||||
|
@ -113,7 +113,7 @@ schema("/listeners/:id") ->
|
|||
'operationId' => crud_listeners_by_id,
|
||||
get => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"List all running node's listeners for the specified id.">>,
|
||||
description => ?DESC(list_by_id),
|
||||
parameters => [?R_REF(listener_id)],
|
||||
responses => #{
|
||||
200 => listener_schema(#{bind => true}),
|
||||
|
@ -122,7 +122,7 @@ schema("/listeners/:id") ->
|
|||
},
|
||||
put => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"Update the specified listener on all nodes.">>,
|
||||
description => ?DESC(update_lisener),
|
||||
parameters => [?R_REF(listener_id)],
|
||||
'requestBody' => listener_schema(#{bind => false}),
|
||||
responses => #{
|
||||
|
@ -133,7 +133,7 @@ schema("/listeners/:id") ->
|
|||
},
|
||||
post => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"Create the specified listener on all nodes.">>,
|
||||
description => ?DESC(create_on_all_nodes),
|
||||
parameters => [?R_REF(listener_id)],
|
||||
'requestBody' => listener_schema(#{bind => true}),
|
||||
responses => #{
|
||||
|
@ -144,7 +144,7 @@ schema("/listeners/:id") ->
|
|||
},
|
||||
delete => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"Delete the specified listener on all nodes.">>,
|
||||
description => ?DESC(delete_on_all_nodes),
|
||||
parameters => [?R_REF(listener_id)],
|
||||
responses => #{
|
||||
204 => <<"Listener deleted">>,
|
||||
|
@ -157,7 +157,7 @@ schema("/listeners/:id/start") ->
|
|||
'operationId' => start_listeners_by_id,
|
||||
post => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"Start the listener on all nodes.">>,
|
||||
description => ?DESC(start_on_all_nodes),
|
||||
parameters => [
|
||||
?R_REF(listener_id)
|
||||
],
|
||||
|
@ -172,7 +172,7 @@ schema("/listeners/:id/stop") ->
|
|||
'operationId' => stop_listeners_by_id,
|
||||
post => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"Stop the listener on all nodes.">>,
|
||||
description => ?DESC(stop_on_all_nodes),
|
||||
parameters => [
|
||||
?R_REF(listener_id)
|
||||
],
|
||||
|
@ -187,7 +187,7 @@ schema("/listeners/:id/restart") ->
|
|||
'operationId' => restart_listeners_by_id,
|
||||
post => #{
|
||||
tags => [<<"listeners">>],
|
||||
desc => <<"Restart listeners on all nodes.">>,
|
||||
description => ?DESC(restart_on_all_nodes),
|
||||
parameters => [
|
||||
?R_REF(listener_id)
|
||||
],
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
-behaviour(minirest_api).
|
||||
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("hocon/include/hocon_types.hrl").
|
||||
|
||||
-import(hoconsc, [mk/2, ref/2]).
|
||||
|
||||
|
@ -73,7 +74,7 @@ schema("/metrics") ->
|
|||
'operationId' => metrics,
|
||||
get =>
|
||||
#{
|
||||
description => <<"EMQX metrics">>,
|
||||
description => ?DESC(emqx_metrics),
|
||||
tags => [<<"Metrics">>],
|
||||
parameters =>
|
||||
[
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
-behaviour(minirest_api).
|
||||
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-import(hoconsc, [mk/2, ref/1, ref/2, enum/1, array/1]).
|
||||
|
||||
|
@ -60,7 +61,7 @@ schema("/nodes") ->
|
|||
'operationId' => nodes,
|
||||
get =>
|
||||
#{
|
||||
description => <<"List EMQX nodes">>,
|
||||
description => ?DESC(list_nodes),
|
||||
tags => [<<"Nodes">>],
|
||||
responses =>
|
||||
#{
|
||||
|
@ -76,7 +77,7 @@ schema("/nodes/:node") ->
|
|||
'operationId' => node,
|
||||
get =>
|
||||
#{
|
||||
description => <<"Get node info">>,
|
||||
description => ?DESC(get_node_info),
|
||||
tags => [<<"Nodes">>],
|
||||
parameters => [ref(node_name)],
|
||||
responses =>
|
||||
|
@ -94,7 +95,7 @@ schema("/nodes/:node/metrics") ->
|
|||
'operationId' => node_metrics,
|
||||
get =>
|
||||
#{
|
||||
description => <<"Get node metrics">>,
|
||||
description => ?DESC(get_node_metrics),
|
||||
tags => [<<"Nodes">>],
|
||||
parameters => [ref(node_name)],
|
||||
responses =>
|
||||
|
@ -112,7 +113,7 @@ schema("/nodes/:node/stats") ->
|
|||
'operationId' => node_stats,
|
||||
get =>
|
||||
#{
|
||||
description => <<"Get node stats">>,
|
||||
description => ?DESC(get_node_stats),
|
||||
tags => [<<"Nodes">>],
|
||||
parameters => [ref(node_name)],
|
||||
responses =>
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
-behaviour(minirest_api).
|
||||
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-import(
|
||||
hoconsc,
|
||||
|
@ -49,7 +50,7 @@ schema("/stats") ->
|
|||
'operationId' => list,
|
||||
get =>
|
||||
#{
|
||||
description => <<"EMQX stats">>,
|
||||
description => ?DESC(emqx_stats),
|
||||
tags => [<<"Metrics">>],
|
||||
parameters => [ref(aggregate)],
|
||||
responses =>
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("emqx/include/emqx.hrl").
|
||||
-include_lib("emqx/include/emqx_mqtt.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-export([
|
||||
api_spec/0,
|
||||
|
@ -58,7 +59,7 @@ schema("/subscriptions") ->
|
|||
#{
|
||||
'operationId' => subscriptions,
|
||||
get => #{
|
||||
description => <<"List subscriptions">>,
|
||||
description => ?DESC(list_subs),
|
||||
tags => [<<"Subscriptions">>],
|
||||
parameters => parameters(),
|
||||
responses => #{
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
|
||||
-include_lib("emqx/include/emqx.hrl").
|
||||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
%% API
|
||||
-behaviour(minirest_api).
|
||||
|
@ -51,7 +52,7 @@ schema("/topics") ->
|
|||
#{
|
||||
'operationId' => topics,
|
||||
get => #{
|
||||
description => <<"Topics list">>,
|
||||
description => ?DESC(topic_list),
|
||||
tags => ?TAGS,
|
||||
parameters => [
|
||||
topic_param(query),
|
||||
|
@ -71,7 +72,7 @@ schema("/topics/:topic") ->
|
|||
#{
|
||||
'operationId' => topic,
|
||||
get => #{
|
||||
description => <<"Lookup topic info by name">>,
|
||||
description => ?DESC(topic_info_by_name),
|
||||
tags => ?TAGS,
|
||||
parameters => [topic_param(path)],
|
||||
responses => #{
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
-include_lib("typerefl/include/types.hrl").
|
||||
-include_lib("emqx/include/logger.hrl").
|
||||
-include_lib("snabbkaffe/include/snabbkaffe.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-export([
|
||||
api_spec/0,
|
||||
|
@ -73,14 +74,14 @@ schema("/trace") ->
|
|||
#{
|
||||
'operationId' => trace,
|
||||
get => #{
|
||||
description => "List all trace",
|
||||
description => ?DESC(list_all),
|
||||
tags => ?TAGS,
|
||||
responses => #{
|
||||
200 => hoconsc:array(hoconsc:ref(trace))
|
||||
}
|
||||
},
|
||||
post => #{
|
||||
description => "Create new trace",
|
||||
description => ?DESC(create_new),
|
||||
tags => ?TAGS,
|
||||
'requestBody' => delete([status, log_size], fields(trace)),
|
||||
responses => #{
|
||||
|
@ -102,7 +103,7 @@ schema("/trace") ->
|
|||
}
|
||||
},
|
||||
delete => #{
|
||||
description => "Clear all traces",
|
||||
description => ?DESC(clear_all),
|
||||
tags => ?TAGS,
|
||||
responses => #{
|
||||
204 => <<"No Content">>
|
||||
|
@ -113,7 +114,7 @@ schema("/trace/:name") ->
|
|||
#{
|
||||
'operationId' => delete_trace,
|
||||
delete => #{
|
||||
description => "Delete specified trace",
|
||||
description => ?DESC(delete_trace),
|
||||
tags => ?TAGS,
|
||||
parameters => [hoconsc:ref(name)],
|
||||
responses => #{
|
||||
|
@ -126,7 +127,7 @@ schema("/trace/:name/stop") ->
|
|||
#{
|
||||
'operationId' => update_trace,
|
||||
put => #{
|
||||
description => "Stop trace by name",
|
||||
description => ?DESC(stop_trace),
|
||||
tags => ?TAGS,
|
||||
parameters => [hoconsc:ref(name)],
|
||||
responses => #{
|
||||
|
@ -139,7 +140,7 @@ schema("/trace/:name/download") ->
|
|||
#{
|
||||
'operationId' => download_trace_log,
|
||||
get => #{
|
||||
description => "Download trace log by name",
|
||||
description => ?DESC(download_log_by_name),
|
||||
tags => ?TAGS,
|
||||
parameters => [hoconsc:ref(name), hoconsc:ref(node)],
|
||||
responses => #{
|
||||
|
@ -161,7 +162,7 @@ schema("/trace/:name/log_detail") ->
|
|||
#{
|
||||
'operationId' => log_file_detail,
|
||||
get => #{
|
||||
description => "get trace log file's metadata, such as size, last update time",
|
||||
description => ?DESC(get_trace_file_metadata),
|
||||
tags => ?TAGS,
|
||||
parameters => [hoconsc:ref(name)],
|
||||
responses => #{
|
||||
|
@ -174,7 +175,7 @@ schema("/trace/:name/log") ->
|
|||
#{
|
||||
'operationId' => stream_log_file,
|
||||
get => #{
|
||||
description => "view trace log",
|
||||
description => ?DESC(view_trace_log),
|
||||
tags => ?TAGS,
|
||||
parameters => [
|
||||
hoconsc:ref(name),
|
||||
|
@ -204,9 +205,8 @@ schema("/trace/:name/log") ->
|
|||
fields(log_file_detail) ->
|
||||
fields(node) ++
|
||||
[
|
||||
{size, hoconsc:mk(integer(), #{desc => "file size"})},
|
||||
{mtime,
|
||||
hoconsc:mk(integer(), #{desc => "the modification and last access times of a file"})}
|
||||
{size, hoconsc:mk(integer(), #{description => ?DESC(file_size)})},
|
||||
{mtime, hoconsc:mk(integer(), #{description => ?DESC(modification_date)})}
|
||||
];
|
||||
fields(trace) ->
|
||||
[
|
||||
|
@ -214,7 +214,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
binary(),
|
||||
#{
|
||||
desc => "Unique and format by [a-zA-Z0-9-_]",
|
||||
description => ?DESC(format),
|
||||
validator => fun ?MODULE:validate_name/1,
|
||||
required => true,
|
||||
example => <<"EMQX-TRACE-1">>
|
||||
|
@ -224,7 +224,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
hoconsc:enum([clientid, topic, ip_address]),
|
||||
#{
|
||||
desc => "" "Filter type" "",
|
||||
description => ?DESC(filter_type),
|
||||
required => true,
|
||||
example => <<"clientid">>
|
||||
}
|
||||
|
@ -233,7 +233,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
binary(),
|
||||
#{
|
||||
desc => "" "support mqtt wildcard topic." "",
|
||||
description => ?DESC(support_wildcard),
|
||||
required => false,
|
||||
example => <<"/dev/#">>
|
||||
}
|
||||
|
@ -242,7 +242,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
binary(),
|
||||
#{
|
||||
desc => "" "mqtt clientid." "",
|
||||
description => ?DESC(mqtt_clientid),
|
||||
required => false,
|
||||
example => <<"dev-001">>
|
||||
}
|
||||
|
@ -252,7 +252,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
binary(),
|
||||
#{
|
||||
desc => "client ip address",
|
||||
description => ?DESC(client_ip_addess),
|
||||
required => false,
|
||||
example => <<"127.0.0.1">>
|
||||
}
|
||||
|
@ -261,7 +261,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
hoconsc:enum([running, stopped, waiting]),
|
||||
#{
|
||||
desc => "trace status",
|
||||
description => ?DESC(trace_status),
|
||||
required => false,
|
||||
example => running
|
||||
}
|
||||
|
@ -283,7 +283,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
emqx_datetime:epoch_second(),
|
||||
#{
|
||||
desc => "rfc3339 timestamp or epoch second",
|
||||
description => ?DESC(time_format),
|
||||
required => false,
|
||||
example => <<"2021-11-04T18:17:38+08:00">>
|
||||
}
|
||||
|
@ -292,7 +292,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
emqx_datetime:epoch_second(),
|
||||
#{
|
||||
desc => "rfc3339 timestamp or epoch second",
|
||||
description => ?DESC(time_format),
|
||||
required => false,
|
||||
example => <<"2021-11-05T18:17:38+08:00">>
|
||||
}
|
||||
|
@ -301,7 +301,7 @@ fields(trace) ->
|
|||
hoconsc:mk(
|
||||
hoconsc:array(map()),
|
||||
#{
|
||||
desc => "trace log size",
|
||||
description => ?DESC(trace_log_size),
|
||||
example => [#{<<"node">> => <<"emqx@127.0.0.1">>, <<"size">> => 1024}],
|
||||
required => false
|
||||
}
|
||||
|
@ -326,7 +326,7 @@ fields(node) ->
|
|||
hoconsc:mk(
|
||||
binary(),
|
||||
#{
|
||||
desc => "Node name",
|
||||
description => ?DESC(node_name),
|
||||
in => query,
|
||||
required => false,
|
||||
example => "emqx@127.0.0.1"
|
||||
|
@ -341,7 +341,7 @@ fields(bytes) ->
|
|||
%% across different OS
|
||||
range(0, ?MAX_SINT32),
|
||||
#{
|
||||
desc => "Maximum number of bytes to send in response",
|
||||
description => ?DESC(max_response_bytes),
|
||||
in => query,
|
||||
required => false,
|
||||
default => 1000,
|
||||
|
@ -356,7 +356,7 @@ fields(position) ->
|
|||
hoconsc:mk(
|
||||
integer(),
|
||||
#{
|
||||
desc => "Offset from the current trace position.",
|
||||
description => ?DESC(current_trace_offset),
|
||||
in => query,
|
||||
required => false,
|
||||
default => 0
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{application, emqx_prometheus, [
|
||||
{description, "Prometheus for EMQX"},
|
||||
% strict semver, bump manually!
|
||||
{vsn, "5.0.10"},
|
||||
{vsn, "5.0.11"},
|
||||
{modules, []},
|
||||
{registered, [emqx_prometheus_sup]},
|
||||
{applications, [kernel, stdlib, prometheus, emqx, emqx_management]},
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
-behaviour(minirest_api).
|
||||
|
||||
-include("emqx_prometheus.hrl").
|
||||
-include_lib("hocon/include/hoconsc.hrl").
|
||||
|
||||
-import(hoconsc, [ref/2]).
|
||||
|
||||
|
@ -50,14 +51,14 @@ schema("/prometheus") ->
|
|||
'operationId' => prometheus,
|
||||
get =>
|
||||
#{
|
||||
description => <<"Get Prometheus config info">>,
|
||||
description => ?DESC(get_prom_conf_info),
|
||||
tags => ?TAGS,
|
||||
responses =>
|
||||
#{200 => prometheus_config_schema()}
|
||||
},
|
||||
put =>
|
||||
#{
|
||||
description => <<"Update Prometheus config">>,
|
||||
description => ?DESC(update_prom_conf_info),
|
||||
tags => ?TAGS,
|
||||
'requestBody' => prometheus_config_schema(),
|
||||
responses =>
|
||||
|
@ -69,7 +70,7 @@ schema("/prometheus/stats") ->
|
|||
'operationId' => stats,
|
||||
get =>
|
||||
#{
|
||||
description => <<"Get Prometheus Data">>,
|
||||
description => ?DESC(get_prom_data),
|
||||
tags => ?TAGS,
|
||||
security => [],
|
||||
responses =>
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
A summary has been added for all endpoints in the HTTP API documentation (accessible at "http://emqx_host_name:18083/api-docs").
|
|
@ -2,42 +2,68 @@ emqx_authn_api {
|
|||
|
||||
authentication_get.desc:
|
||||
"""List authenticators for global authentication."""
|
||||
authentication_get.label:
|
||||
"""List authenticators"""
|
||||
|
||||
authentication_id_delete.desc:
|
||||
"""Delete authenticator from global authentication chain."""
|
||||
authentication_id_delete.label:
|
||||
"""Delete authenticator"""
|
||||
|
||||
authentication_id_get.desc:
|
||||
"""Get authenticator from global authentication chain."""
|
||||
authentication_id_get.label:
|
||||
"""Get authenticator"""
|
||||
|
||||
authentication_id_position_put.desc:
|
||||
"""Move authenticator in global authentication chain."""
|
||||
authentication_id_position_put.label:
|
||||
"""Move authenticator"""
|
||||
|
||||
authentication_id_put.desc:
|
||||
"""Update authenticator from global authentication chain."""
|
||||
authentication_id_put.label:
|
||||
"""Update authenticator"""
|
||||
|
||||
authentication_id_status_get.desc:
|
||||
"""Get authenticator status from global authentication chain."""
|
||||
authentication_id_status_get.label:
|
||||
"""Get authenticator status"""
|
||||
|
||||
authentication_id_users_get.desc:
|
||||
"""List users in authenticator in global authentication chain."""
|
||||
authentication_id_users_get.label:
|
||||
"""List users in authenticator"""
|
||||
|
||||
authentication_id_users_post.desc:
|
||||
"""Create users for authenticator in global authentication chain."""
|
||||
authentication_id_users_post.label:
|
||||
"""Create users for authenticator"""
|
||||
|
||||
authentication_id_users_user_id_delete.desc:
|
||||
"""Delete user in authenticator in global authentication chain."""
|
||||
authentication_id_users_user_id_delete.label:
|
||||
"""Delete user in authenticator"""
|
||||
|
||||
authentication_id_users_user_id_get.desc:
|
||||
"""Get user from authenticator in global authentication chain."""
|
||||
authentication_id_users_user_id_get.label:
|
||||
"""Get user from authenticator"""
|
||||
|
||||
authentication_id_users_user_id_put.desc:
|
||||
"""Update user in authenticator in global authentication chain."""
|
||||
authentication_id_users_user_id_put.label:
|
||||
"""Update user in authenticator"""
|
||||
|
||||
authentication_post.desc:
|
||||
"""Create authenticator for global authentication."""
|
||||
authentication_post.label:
|
||||
"""Create authenticator"""
|
||||
|
||||
is_superuser.desc:
|
||||
"""Is superuser"""
|
||||
is_superuser.label:
|
||||
"""Is superuser"""
|
||||
|
||||
like_user_id.desc:
|
||||
"""Fuzzy search user_id (username or clientid)."""
|
||||
|
@ -47,50 +73,82 @@ like_user_id.label:
|
|||
|
||||
listeners_listener_id_authentication_get.desc:
|
||||
"""List authenticators for listener authentication."""
|
||||
listeners_listener_id_authentication_get.label:
|
||||
"""List authenticators for listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_delete.desc:
|
||||
"""Delete authenticator from listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_delete.label:
|
||||
"""Delete authenticator from listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_get.desc:
|
||||
"""Get authenticator from listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_get.label:
|
||||
"""Get authenticator from listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_position_put.desc:
|
||||
"""Move authenticator in listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_position_put.label:
|
||||
"""Move authenticator in listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_put.desc:
|
||||
"""Update authenticator from listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_put.label:
|
||||
"""Update authenticator from listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_status_get.desc:
|
||||
"""Get authenticator status from listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_status_get.label:
|
||||
"""Get authenticator status from listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_users_get.desc:
|
||||
"""List users in authenticator in listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_users_get.label:
|
||||
"""List users in authenticator in listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_users_post.desc:
|
||||
"""Create users for authenticator in listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_users_post.label:
|
||||
"""Create users for authenticator in listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_users_user_id_delete.desc:
|
||||
"""Delete user in authenticator in listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_users_user_id_delete.label:
|
||||
"""Delete user in authenticator in listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_users_user_id_get.desc:
|
||||
"""Get user from authenticator in listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_users_user_id_get.label:
|
||||
"""Get user from authenticator in listener"""
|
||||
|
||||
listeners_listener_id_authentication_id_users_user_id_put.desc:
|
||||
"""Update user in authenticator in listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_users_user_id_put.label:
|
||||
"""Update user in authenticator in listener"""
|
||||
|
||||
listeners_listener_id_authentication_post.desc:
|
||||
"""Create authenticator for listener authentication."""
|
||||
listeners_listener_id_authentication_post.label:
|
||||
"""Create authenticator for listener"""
|
||||
|
||||
param_auth_id.desc:
|
||||
"""Authenticator ID."""
|
||||
param_auth_id.label:
|
||||
"""Authenticator ID"""
|
||||
|
||||
param_listener_id.desc:
|
||||
"""Listener ID."""
|
||||
param_listener_id.label:
|
||||
"""Listener ID"""
|
||||
|
||||
param_position.desc:
|
||||
"""Position of authenticator in chain. Possible values are 'front', 'rear', 'before:{other_authenticator}', 'after:{other_authenticator}'."""
|
||||
param_position.label:
|
||||
"""Position of authenticator"""
|
||||
|
||||
param_user_id.desc:
|
||||
"""User ID."""
|
||||
param_user_id.label:
|
||||
"""User ID"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,8 +2,12 @@ emqx_authn_user_import_api {
|
|||
|
||||
authentication_id_import_users_post.desc:
|
||||
"""Import users into authenticator in global authentication chain."""
|
||||
authentication_id_import_users_post.label:
|
||||
"""Global import users into authenticator"""
|
||||
|
||||
listeners_listener_id_authentication_id_import_users_post.desc:
|
||||
"""Import users into authenticator in listener authentication chain."""
|
||||
listeners_listener_id_authentication_id_import_users_post.label:
|
||||
"""Import users into authenticator in listener"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,5 +2,7 @@ emqx_authz_api_cache {
|
|||
|
||||
authorization_cache_delete.desc:
|
||||
"""Clean all authorization cache in the cluster."""
|
||||
authorization_cache_delete.label:
|
||||
"""Clean authorization cache in cluster"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,13 +2,11 @@ emqx_authz_api_mnesia {
|
|||
|
||||
action.desc:
|
||||
"""Authorized action (pub/sub/all)"""
|
||||
|
||||
action.label:
|
||||
"""action"""
|
||||
|
||||
clientid.desc:
|
||||
"""ClientID"""
|
||||
|
||||
clientid.label:
|
||||
"""clientid"""
|
||||
|
||||
|
@ -26,62 +24,87 @@ fuzzy_username.label:
|
|||
|
||||
permission.desc:
|
||||
"""Permission"""
|
||||
|
||||
permission.label:
|
||||
"""permission"""
|
||||
|
||||
rules_all_delete.desc:
|
||||
"""Delete rules for 'all'"""
|
||||
rules_all_delete.label:
|
||||
"""Delete rules for 'all'"""
|
||||
|
||||
rules_all_get.desc:
|
||||
"""Show the list of rules for 'all'"""
|
||||
rules_all_get.label:
|
||||
"""Show rules for 'all'"""
|
||||
|
||||
rules_all_post.desc:
|
||||
"""Create/Update the list of rules for 'all'."""
|
||||
rules_all_post.label:
|
||||
"""Update rules for 'all'"""
|
||||
|
||||
rules_delete.desc:
|
||||
"""Delete all rules for all 'users', 'clients' and 'all'"""
|
||||
rules_delete.label:
|
||||
"""Delete all rules"""
|
||||
|
||||
topic.desc:
|
||||
"""Rule on specific topic"""
|
||||
|
||||
topic.label:
|
||||
"""topic"""
|
||||
|
||||
user_clientid_delete.desc:
|
||||
"""Delete rule for 'clientid'"""
|
||||
user_clientid_delete.label:
|
||||
"""Delete rule for 'clientid'"""
|
||||
|
||||
user_clientid_get.desc:
|
||||
"""Get rule for 'clientid'"""
|
||||
user_clientid_get.label:
|
||||
"""Get rule for 'clientid'"""
|
||||
|
||||
user_clientid_put.desc:
|
||||
"""Set rule for 'clientid'"""
|
||||
user_clientid_put.label:
|
||||
"""Set rule for 'clientid'"""
|
||||
|
||||
user_username_delete.desc:
|
||||
"""Delete rule for 'username'"""
|
||||
user_username_delete.label:
|
||||
"""Delete rule for 'username'"""
|
||||
|
||||
user_username_get.desc:
|
||||
"""Get rule for 'username'"""
|
||||
user_username_get.label:
|
||||
"""Get rule for 'username'"""
|
||||
|
||||
user_username_put.desc:
|
||||
"""Set rule for 'username'"""
|
||||
user_username_put.label:
|
||||
"""Set rule for 'username'"""
|
||||
|
||||
username.desc:
|
||||
"""Username"""
|
||||
|
||||
username.label:
|
||||
"""username"""
|
||||
|
||||
users_clientid_get.desc:
|
||||
"""Show the list of rules for clients"""
|
||||
users_clientid_get.label:
|
||||
"""Show rules for clients"""
|
||||
|
||||
users_clientid_post.desc:
|
||||
"""Add new rule for 'clientid'"""
|
||||
users_clientid_post.label:
|
||||
"""Add rule for 'clientid'"""
|
||||
|
||||
users_username_get.desc:
|
||||
"""Show the list of rules for users"""
|
||||
users_username_get.label:
|
||||
"""Show rules for users"""
|
||||
|
||||
users_username_post.desc:
|
||||
"""Add new rule for 'username'"""
|
||||
users_username_post.label:
|
||||
"""Add rule for 'username'"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,46 +2,56 @@ emqx_authz_api_sources {
|
|||
|
||||
authorization_sources_get.desc:
|
||||
"""List all authorization sources"""
|
||||
authorization_sources_get.label:
|
||||
"""List all authorization sources"""
|
||||
|
||||
authorization_sources_post.desc:
|
||||
"""Add a new source"""
|
||||
authorization_sources_post.label:
|
||||
"""Add a new source"""
|
||||
|
||||
authorization_sources_type_delete.desc:
|
||||
"""Delete source"""
|
||||
authorization_sources_type_delete.label:
|
||||
"""Delete source"""
|
||||
|
||||
authorization_sources_type_get.desc:
|
||||
"""Get a authorization source"""
|
||||
authorization_sources_type_get.label:
|
||||
"""Get a authorization source"""
|
||||
|
||||
authorization_sources_type_move_post.desc:
|
||||
"""Change the exection order of sources"""
|
||||
authorization_sources_type_move_post.label:
|
||||
"""Change order of sources"""
|
||||
|
||||
authorization_sources_type_put.desc:
|
||||
"""Update source"""
|
||||
authorization_sources_type_put.label:
|
||||
"""Update source"""
|
||||
|
||||
authorization_sources_type_status_get.desc:
|
||||
"""Get a authorization source"""
|
||||
authorization_sources_type_status_get.label:
|
||||
"""Get a authorization source"""
|
||||
|
||||
source.desc:
|
||||
"""Authorization source"""
|
||||
|
||||
source.label:
|
||||
"""source"""
|
||||
|
||||
source_config.desc:
|
||||
"""Source config"""
|
||||
|
||||
source_config.label:
|
||||
"""source_config"""
|
||||
|
||||
source_type.desc:
|
||||
"""Authorization type"""
|
||||
|
||||
source_type.label:
|
||||
"""source_type"""
|
||||
|
||||
sources.desc:
|
||||
"""Authorization sources"""
|
||||
|
||||
sources.label:
|
||||
"""sources"""
|
||||
|
||||
|
|
|
@ -2,11 +2,17 @@ emqx_auto_subscribe_api {
|
|||
|
||||
list_auto_subscribe_api.desc:
|
||||
"""Get auto subscribe topic list"""
|
||||
list_auto_subscribe_api.label:
|
||||
"""Get auto subscribe topics"""
|
||||
|
||||
update_auto_subscribe_api.desc:
|
||||
"""Update auto subscribe topic list"""
|
||||
update_auto_subscribe_api.label:
|
||||
"""Update auto subscribe topics"""
|
||||
|
||||
update_auto_subscribe_api_response409.desc:
|
||||
"""Auto Subscribe topics max limit"""
|
||||
update_auto_subscribe_api_response409.label:
|
||||
"""Auto Subscribe topics max limit"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,24 +2,36 @@ emqx_dashboard_api {
|
|||
|
||||
change_pwd_api.desc:
|
||||
"""Change dashboard user password"""
|
||||
change_pwd_api.label:
|
||||
"""Change dashboard user password"""
|
||||
|
||||
create_user_api.desc:
|
||||
"""Create dashboard user"""
|
||||
create_user_api.label:
|
||||
"""Create dashboard user"""
|
||||
|
||||
create_user_api_success.desc:
|
||||
"""Create dashboard user success"""
|
||||
create_user_api_success.label:
|
||||
"""Create dashboard user success"""
|
||||
|
||||
delete_user_api.desc:
|
||||
"""Delete dashboard user"""
|
||||
delete_user_api.label:
|
||||
"""Delete dashboard user"""
|
||||
|
||||
license.desc:
|
||||
"""EMQX License. opensource or enterprise"""
|
||||
|
||||
list_users_api.desc:
|
||||
"""Dashboard list users"""
|
||||
list_users_api.label:
|
||||
"""Dashboard list users"""
|
||||
|
||||
login_api.desc:
|
||||
"""Get Dashboard Auth Token."""
|
||||
login_api.label:
|
||||
"""Get Dashboard Auth Token."""
|
||||
|
||||
login_failed401.desc:
|
||||
"""Login failed. Bad username or password"""
|
||||
|
@ -32,6 +44,8 @@ login_success.desc:
|
|||
|
||||
logout_api.desc:
|
||||
"""Dashboard user logout"""
|
||||
logout_api.label:
|
||||
"""Dashboard user logout"""
|
||||
|
||||
new_pwd.desc:
|
||||
"""New password"""
|
||||
|
@ -47,6 +61,8 @@ token.desc:
|
|||
|
||||
update_user_api.desc:
|
||||
"""Update dashboard user description"""
|
||||
update_user_api.label:
|
||||
"""Update dashboard user description"""
|
||||
|
||||
update_user_api200.desc:
|
||||
"""Update dashboard user success"""
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
emqx_dashboard_error_code_api {
|
||||
|
||||
error_codes.desc:
|
||||
"""API Error Codes"""
|
||||
error_codes.label:
|
||||
"""API Error Codes"""
|
||||
|
||||
error_codes_u.desc:
|
||||
"""API Error Codes"""
|
||||
error_codes_u.label:
|
||||
"""API Error Codes"""
|
||||
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
emqx_dashboard_monitor_api {
|
||||
|
||||
list_monitor.desc:
|
||||
"""List monitor data."""
|
||||
list_monitor.label:
|
||||
"""List monitor data."""
|
||||
|
||||
list_monitor_node.desc:
|
||||
"""List the monitor data on the node."""
|
||||
list_monitor_node.label:
|
||||
"""List the monitor data on the node."""
|
||||
|
||||
current_status.desc:
|
||||
"""Current status. Gauge and rate."""
|
||||
current_status.label:
|
||||
"""Current status. Gauge and rate."""
|
||||
|
||||
current_status_node.desc:
|
||||
"""Node current status. Gauge and rate."""
|
||||
current_status_node.label:
|
||||
"""Node current status. Gauge and rate."""
|
||||
|
||||
}
|
|
@ -2,71 +2,117 @@ emqx_delayed_api {
|
|||
|
||||
bad_msgid_format.desc:
|
||||
"""Bad Message ID format"""
|
||||
bad_msgid_format.label:
|
||||
"""Bad Message ID format"""
|
||||
|
||||
count.desc:
|
||||
"""Count of delayed messages"""
|
||||
count.label:
|
||||
"""Count of delayed messages"""
|
||||
|
||||
delayed_interval.desc:
|
||||
"""Delayed interval(second)"""
|
||||
delayed_interval.label:
|
||||
"""Delayed interval"""
|
||||
|
||||
delayed_remaining.desc:
|
||||
"""Delayed remaining(second)"""
|
||||
delayed_remaining.label:
|
||||
"""Delayed remaining"""
|
||||
|
||||
delete_api.desc:
|
||||
"""Delete delayed message"""
|
||||
delete_api.label:
|
||||
"""Delete delayed message"""
|
||||
|
||||
expected_at.desc:
|
||||
"""Expect publish time, in RFC 3339 format"""
|
||||
expected_at.label:
|
||||
"""Expect publish time"""
|
||||
|
||||
from_clientid.desc:
|
||||
"""From ClientID"""
|
||||
from_clientid.label:
|
||||
"""From ClientID"""
|
||||
|
||||
from_username.desc:
|
||||
"""From Username"""
|
||||
from_username.label:
|
||||
"""From Username"""
|
||||
|
||||
get_message_api.desc:
|
||||
"""View delayed message"""
|
||||
get_message_api.label:
|
||||
"""View delayed message"""
|
||||
|
||||
illegality_limit.desc:
|
||||
"""Max limit illegality"""
|
||||
illegality_limit.label:
|
||||
"""Max limit illegality"""
|
||||
|
||||
list_api.desc:
|
||||
"""List delayed messages"""
|
||||
list_api.label:
|
||||
"""List delayed messages"""
|
||||
|
||||
msgid.desc:
|
||||
"""Delayed Message ID"""
|
||||
msgid.label:
|
||||
"""Delayed Message ID"""
|
||||
|
||||
msgid_not_found.desc:
|
||||
"""Message ID not found"""
|
||||
msgid_not_found.label:
|
||||
"""Message ID not found"""
|
||||
|
||||
node.desc:
|
||||
"""The node where message from"""
|
||||
node.label:
|
||||
"""Node where message from"""
|
||||
|
||||
payload.desc:
|
||||
"""Payload, base64 encoded. Payload will be set to 'PAYLOAD_TO_LARGE' if its length is larger than 2048 bytes"""
|
||||
payload.label:
|
||||
"""Payload"""
|
||||
|
||||
publish_at.desc:
|
||||
"""Clinet publish message time, in RFC 3339 format"""
|
||||
publish_at.label:
|
||||
"""Client publish message time"""
|
||||
|
||||
qos.desc:
|
||||
"""QoS"""
|
||||
qos.label:
|
||||
"""QoS"""
|
||||
|
||||
topic.desc:
|
||||
"""Topic"""
|
||||
topic.label:
|
||||
"""Topic"""
|
||||
|
||||
update_api.desc:
|
||||
"""Enable or disable delayed, set max delayed messages"""
|
||||
update_api.label:
|
||||
"""Enable or disable delayed"""
|
||||
|
||||
update_success.desc:
|
||||
"""Enable or disable delayed successfully"""
|
||||
update_success.label:
|
||||
"""Enable or disable delayed successfully"""
|
||||
|
||||
view_limit.desc:
|
||||
"""Page limit"""
|
||||
view_limit.label:
|
||||
"""Page limit"""
|
||||
|
||||
view_page.desc:
|
||||
"""View page"""
|
||||
view_page.label:
|
||||
"""View page"""
|
||||
|
||||
view_status_api.desc:
|
||||
"""Get delayed status"""
|
||||
view_status_api.label:
|
||||
"""Get delayed status"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,70 +2,109 @@ emqx_exhook_api {
|
|||
|
||||
add_server.desc:
|
||||
"""Add a server"""
|
||||
add_server.label:
|
||||
"""Add a server"""
|
||||
|
||||
delete_server.desc:
|
||||
"""Delete the server"""
|
||||
delete_server.label:
|
||||
"""Delete the server"""
|
||||
|
||||
get_detail.desc:
|
||||
"""Get the detail information of Exhook server"""
|
||||
get_detail.label:
|
||||
"""Get server details"""
|
||||
|
||||
get_hooks.desc:
|
||||
"""Get the hooks information of server"""
|
||||
get_hooks.label:
|
||||
"""Get server hooks information"""
|
||||
|
||||
hook_metrics.desc:
|
||||
"""Metrics information of this hook in the current node"""
|
||||
hook_metrics.label:
|
||||
"""Hook metrics"""
|
||||
|
||||
hook_name.desc:
|
||||
"""The hook's name"""
|
||||
hook_name.label:
|
||||
"""Hook name"""
|
||||
|
||||
hook_params.desc:
|
||||
"""The parameters used when the hook is registered"""
|
||||
hook_params.label:
|
||||
"""Hook parameters"""
|
||||
|
||||
list_all_servers.desc:
|
||||
"""List all servers"""
|
||||
list_all_servers.label:
|
||||
"""List servers"""
|
||||
|
||||
metric_failed.desc:
|
||||
"""The number of times the hook execution failed"""
|
||||
metric_failed.label:
|
||||
"""Failed executions count"""
|
||||
|
||||
metric_max_rate.desc:
|
||||
"""Maximum call rate of hooks"""
|
||||
metric_max_rate.label:
|
||||
"""Max hook call rate"""
|
||||
|
||||
metric_rate.desc:
|
||||
"""The call rate of hooks"""
|
||||
metric_rate.label:
|
||||
"""Hook call rate"""
|
||||
|
||||
metric_succeed.desc:
|
||||
"""The number of times the hooks execution successful"""
|
||||
metric_succeed.label:
|
||||
"""Successful executions count"""
|
||||
|
||||
metrics.desc:
|
||||
"""Metrics information"""
|
||||
metrics.label:
|
||||
"""Metrics information"""
|
||||
|
||||
move_api.desc:
|
||||
"""Move the server.
|
||||
NOTE: The position should be "front | rear | before:{name} | after:{name}"""
|
||||
|
||||
move_api.label:
|
||||
"""Change order of execution for registered Exhook server"""
|
||||
|
||||
move_position.desc:
|
||||
"""The target position to be moved"""
|
||||
move_position.label:
|
||||
"""Target position"""
|
||||
|
||||
node.desc:
|
||||
"""Node name"""
|
||||
node.label:
|
||||
"""Node name"""
|
||||
|
||||
node_hook_metrics.desc:
|
||||
"""Metrics information of this hook in all nodes"""
|
||||
node_hook_metrics.label:
|
||||
"""Node-wise hook metrics"""
|
||||
|
||||
node_metrics.desc:
|
||||
"""Metrics information of this server in all nodes"""
|
||||
node_metrics.label:
|
||||
"""Node-wise server metrics"""
|
||||
|
||||
node_status.desc:
|
||||
"""status of this server in all nodes"""
|
||||
node_status.label:
|
||||
"""Node-wise server status"""
|
||||
|
||||
server_metrics.desc:
|
||||
"""Metrics information of this server in the current node"""
|
||||
server_metrics.label:
|
||||
"""Server metrics"""
|
||||
|
||||
server_name.desc:
|
||||
"""The Exhook server name"""
|
||||
server_name.label:
|
||||
"""Server name"""
|
||||
|
||||
status.desc:
|
||||
"""The status of Exhook server.<br/>
|
||||
|
@ -74,8 +113,12 @@ connecting: connection failed, reconnecting<br/>
|
|||
disconnected: failed to connect and didn't reconnect<br/>
|
||||
disabled: this server is disabled<br/>
|
||||
error: failed to view the status of this server"""
|
||||
status.label:
|
||||
"""Server status"""
|
||||
|
||||
update_server.desc:
|
||||
"""Update the server"""
|
||||
update_server.label:
|
||||
"""Update the server"""
|
||||
|
||||
}
|
||||
|
|
|
@ -8,6 +8,8 @@ deactivate_at.desc:
|
|||
|
||||
delete_alarms_api.desc:
|
||||
"""Remove all historical alarms."""
|
||||
delete_alarms_api.label:
|
||||
"""Remove all historical alarms."""
|
||||
|
||||
delete_alarms_api_response204.desc:
|
||||
"""Historical alarms have been cleared successfully."""
|
||||
|
@ -26,6 +28,8 @@ The default is false."""
|
|||
|
||||
list_alarms_api.desc:
|
||||
"""List currently activated alarms or historical alarms, determined by query parameters."""
|
||||
list_alarms_api.label:
|
||||
"""List alarms"""
|
||||
|
||||
message.desc:
|
||||
"""Alarm message, which describes the alarm content in a human-readable format."""
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
emqx_mgmt_api_api_keys {
|
||||
|
||||
api_key_list.desc:
|
||||
"""Return api_key list"""
|
||||
api_key_list.label:
|
||||
"""Return api_key list"""
|
||||
|
||||
create_new_api_key.desc:
|
||||
"""Create new api_key"""
|
||||
create_new_api_key.label:
|
||||
"""Create new api_key"""
|
||||
|
||||
get_api_key.desc:
|
||||
"""Return the specific api_key"""
|
||||
get_api_key.label:
|
||||
"""Return the specific api_key"""
|
||||
|
||||
update_api_key.desc:
|
||||
"""Update the specific api_key"""
|
||||
update_api_key.label:
|
||||
"""Update the specific api_key"""
|
||||
|
||||
delete_api_key.desc:
|
||||
"""Delete the specific api_key"""
|
||||
delete_api_key.label:
|
||||
"""Delete the specific api_key"""
|
||||
|
||||
format.desc:
|
||||
"""Unique and format by [a-zA-Z0-9-_]"""
|
||||
format.label:
|
||||
"""Unique and format by [a-zA-Z0-9-_]"""
|
||||
|
||||
}
|
|
@ -20,18 +20,24 @@ by.label:
|
|||
|
||||
create_banned_api.desc:
|
||||
"""Add a client ID, username or IP address to the blacklist."""
|
||||
create_banned_api.label:
|
||||
"""Ban client ID, username or IP address"""
|
||||
|
||||
create_banned_api_response400.desc:
|
||||
"""Bad request, possibly due to wrong parameters or the existence of a banned object."""
|
||||
|
||||
delete_banned_api.desc:
|
||||
"""Remove a client ID, username or IP address from the blacklist."""
|
||||
delete_banned_api.label:
|
||||
"""Unban a client ID, username or IP address"""
|
||||
|
||||
delete_banned_api_response404.desc:
|
||||
"""The banned object was not found in the blacklist."""
|
||||
|
||||
list_banned_api.desc:
|
||||
"""List all currently banned client IDs, usernames and IP addresses."""
|
||||
list_banned_api.label:
|
||||
"""List all banned client IDs"""
|
||||
|
||||
reason.desc:
|
||||
"""Ban reason, record the reason why the current object was banned."""
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
emqx_mgmt_api_clients {
|
||||
|
||||
list_clients.desc:
|
||||
"""List clients"""
|
||||
list_clients.label:
|
||||
"""List clients"""
|
||||
|
||||
clients_info_from_id.desc:
|
||||
"""Get clients info by client ID"""
|
||||
clients_info_from_id.label:
|
||||
"""Get clients info by client ID"""
|
||||
|
||||
kick_client_id.desc:
|
||||
"""Kick out client by client ID"""
|
||||
kick_client_id.label:
|
||||
"""Kick out client by client ID"""
|
||||
|
||||
get_authz_cache.desc:
|
||||
"""Get client authz cache in the cluster."""
|
||||
get_authz_cache.label:
|
||||
"""Get client authz cache in the cluster."""
|
||||
|
||||
clean_authz_cache.desc:
|
||||
"""Clean client authz cache in the cluster."""
|
||||
clean_authz_cache.label:
|
||||
"""Clean client authz cache in the cluster."""
|
||||
|
||||
get_client_subs.desc:
|
||||
"""Get client subscriptions"""
|
||||
get_client_subs.label:
|
||||
"""Get client subscriptions"""
|
||||
|
||||
subscribe.desc:
|
||||
"""Subscribe"""
|
||||
subscribe.label:
|
||||
"""Subscribe"""
|
||||
|
||||
subscribe_g.desc:
|
||||
"""Subscribe bulk"""
|
||||
subscribe_g.label:
|
||||
"""Subscribe bulk"""
|
||||
|
||||
unsubscribe.desc:
|
||||
"""Unsubscribe"""
|
||||
unsubscribe.label:
|
||||
"""Unsubscribe"""
|
||||
|
||||
unsubscribe_g.desc:
|
||||
"""Unsubscribe bulk"""
|
||||
unsubscribe_g.label:
|
||||
"""Unsubscribe bulk"""
|
||||
|
||||
set_keepalive_seconds.desc:
|
||||
"""Set the online client keepalive by seconds"""
|
||||
set_keepalive_seconds.label:
|
||||
"""Set the online client keepalive by seconds"""
|
||||
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
emqx_mgmt_api_cluster {
|
||||
|
||||
get_cluster_info.desc:
|
||||
"""Get cluster info"""
|
||||
get_cluster_info.label:
|
||||
"""Get cluster info"""
|
||||
|
||||
invite_node.desc:
|
||||
"""Invite node to cluster"""
|
||||
invite_node.label:
|
||||
"""Invite node to cluster"""
|
||||
|
||||
force_remove_node.desc:
|
||||
"""Force leave node from cluster"""
|
||||
force_remove_node.label:
|
||||
"""Force leave node from cluster"""
|
||||
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
emqx_mgmt_api_configs {
|
||||
|
||||
get_conf_node.desc:
|
||||
"""Get all the configurations of the specified node, including hot and non-hot updatable items."""
|
||||
get_conf_node.label:
|
||||
"""Get all the configurations for node."""
|
||||
|
||||
node_name.desc:
|
||||
"""Node's name: If you do not fill in the fields, this node will be used by default."""
|
||||
node_name.label:
|
||||
"""Node's name."""
|
||||
|
||||
rest_conf_query.desc:
|
||||
"""Reset the config entry specified by the query string parameter `conf_path`.<br/>
|
||||
- For a config entry that has default value, this resets it to the default value;
|
||||
- For a config entry that has no default value, an error 400 will be returned"""
|
||||
rest_conf_query.label:
|
||||
"""Reset the config entry with query"""
|
||||
|
||||
get_global_zone_configs.desc:
|
||||
"""Get the global zone configs"""
|
||||
get_global_zone_configs.label:
|
||||
"""Get the global zone configs"""
|
||||
|
||||
update_globar_zone_configs.desc:
|
||||
"""Update globbal zone configs"""
|
||||
update_globar_zone_configs.label:
|
||||
"""Update globbal zone configs"""
|
||||
|
||||
get_node_level_limiter_congigs.desc:
|
||||
"""Get the node-level limiter configs"""
|
||||
get_node_level_limiter_congigs.label:
|
||||
"""Get the node-level limiter configs"""
|
||||
|
||||
update_node_level_limiter_congigs.desc:
|
||||
"""Update the node-level limiter configs"""
|
||||
update_node_level_limiter_congigs.label:
|
||||
"""Update the node-level limiter configs"""
|
||||
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
emqx_mgmt_api_listeners {
|
||||
|
||||
list_node_live_statuses.desc:
|
||||
"""List all running node's listeners live status. group by listener type"""
|
||||
list_node_live_statuses.label:
|
||||
"""List all running node's listeners live status. group by listener type"""
|
||||
|
||||
list_listeners.desc:
|
||||
"""List all running node's listeners for the specified type."""
|
||||
list_listeners.label:
|
||||
"""List all running node's listeners for the specified type."""
|
||||
|
||||
listener_type.desc:
|
||||
"""Listener type"""
|
||||
listener_type.label:
|
||||
"""Listener type"""
|
||||
|
||||
create_on_all_nodes.desc:
|
||||
"""Create the specified listener on all nodes."""
|
||||
create_on_all_nodes.label:
|
||||
"""Create the specified listener on all nodes."""
|
||||
|
||||
list_by_id.desc:
|
||||
"""List all running node's listeners for the specified id."""
|
||||
list_by_id.label:
|
||||
"""List all running node's listeners for the specified id."""
|
||||
|
||||
update_lisener.desc:
|
||||
"""Update the specified listener on all nodes."""
|
||||
update_lisener.label:
|
||||
"""Update the specified listener on all nodes."""
|
||||
|
||||
create_on_all_nodes_2.desc:
|
||||
"""Create the specified listener on all nodes."""
|
||||
create_on_all_nodes_2.label:
|
||||
"""Create the specified listener on all nodes."""
|
||||
|
||||
delete_on_all_nodes.desc:
|
||||
"""Delete the specified listener on all nodes."""
|
||||
delete_on_all_nodes.label:
|
||||
"""Delete the specified listener on all nodes."""
|
||||
|
||||
start_on_all_nodes.desc:
|
||||
"""Start the listener on all nodes."""
|
||||
start_on_all_nodes.label:
|
||||
"""Start the listener on all nodes."""
|
||||
|
||||
stop_on_all_nodes.desc:
|
||||
"""Stop the listener on all nodes."""
|
||||
stop_on_all_nodes.label:
|
||||
"""Stop the listener on all nodes."""
|
||||
|
||||
restart_on_all_nodes.desc:
|
||||
"""Restart listeners on all nodes."""
|
||||
restart_on_all_nodes.label:
|
||||
"""Restart listeners on all nodes."""
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
emqx_mgmt_api_metrics {
|
||||
|
||||
emqx_metrics.desc:
|
||||
"""EMQX metrics"""
|
||||
emqx_metrics.label:
|
||||
"""EMQX metrics"""
|
||||
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
emqx_mgmt_api_nodes {
|
||||
|
||||
list_nodes.desc:
|
||||
"""List EMQX nodes"""
|
||||
list_nodes.label:
|
||||
"""List EMQX nodes"""
|
||||
|
||||
get_node_info.desc:
|
||||
"""Get node info"""
|
||||
get_node_info.label:
|
||||
"""Get node info"""
|
||||
|
||||
get_node_metrics.desc:
|
||||
"""Get node metrics"""
|
||||
get_node_metrics.label:
|
||||
"""Get node metrics"""
|
||||
|
||||
get_node_stats.desc:
|
||||
"""Get node stats"""
|
||||
get_node_stats.label:
|
||||
"""Get node stats"""
|
||||
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
emqx_mgmt_api_stats {
|
||||
|
||||
emqx_stats.desc:
|
||||
"""EMQX stats"""
|
||||
emqx_stats.label:
|
||||
"""EMQX stats"""
|
||||
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
emqx_mgmt_api_subscriptions {
|
||||
|
||||
list_subs.desc:
|
||||
"""List subscriptions"""
|
||||
list_subs.label:
|
||||
"""List subscriptions"""
|
||||
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
emqx_mgmt_api_topics {
|
||||
|
||||
topic_list.desc:
|
||||
"""Topics list"""
|
||||
topic_list.label:
|
||||
"""Topics list"""
|
||||
|
||||
topic_info_by_name.desc:
|
||||
"""Lookup topic info by name"""
|
||||
topic_info_by_name.label:
|
||||
"""Lookup topic info by name"""
|
||||
|
||||
}
|
|
@ -0,0 +1,118 @@
|
|||
emqx_mgmt_api_trace {
|
||||
|
||||
list_all.desc:
|
||||
"""List all trace"""
|
||||
list_all.label:
|
||||
"""List all trace"""
|
||||
|
||||
create_new.desc:
|
||||
"""Create new trace"""
|
||||
create_new.label:
|
||||
"""Create new trace"""
|
||||
|
||||
clear_all.desc:
|
||||
"""Clear all traces"""
|
||||
clear_all.label:
|
||||
"""Clear all traces"""
|
||||
|
||||
delete_trace.desc:
|
||||
"""Delete specified trace"""
|
||||
delete_trace.label:
|
||||
"""Delete specified trace"""
|
||||
|
||||
stop_trace.desc:
|
||||
"""Stop trace by name"""
|
||||
stop_trace.label:
|
||||
"""Stop trace by name"""
|
||||
|
||||
download_log_by_name.desc:
|
||||
"""Download trace log by name"""
|
||||
download_log_by_name.label:
|
||||
"""Download trace log by name"""
|
||||
|
||||
trace_zip_file.desc:
|
||||
"""A trace zip file"""
|
||||
trace_zip_file.label:
|
||||
"""A trace zip file"""
|
||||
|
||||
get_trace_file_metadata.desc:
|
||||
"""get trace log file's metadata, such as size, last update time"""
|
||||
get_trace_file_metadata.label:
|
||||
"""get trace log file's metadata"""
|
||||
|
||||
view_trace_log.desc:
|
||||
"""view trace log"""
|
||||
view_trace_log.label:
|
||||
"""view trace log"""
|
||||
|
||||
file_size.desc:
|
||||
"""file size"""
|
||||
file_size.label:
|
||||
"""file size"""
|
||||
|
||||
modification_date.desc:
|
||||
"""the modification and last access times of a file"""
|
||||
modification_date.label:
|
||||
"""last access time"""
|
||||
|
||||
format.desc:
|
||||
"""Unique and format by [a-zA-Z0-9-_]"""
|
||||
format.label:
|
||||
"""Unique and format by [a-zA-Z0-9-_]"""
|
||||
|
||||
filter_type.desc:
|
||||
"""Filter type"""
|
||||
filter_type.label:
|
||||
"""Filter type"""
|
||||
|
||||
support_wildcard.desc:
|
||||
"""support mqtt wildcard topic."""
|
||||
support_wildcard.label:
|
||||
"""support mqtt wildcard topic"""
|
||||
|
||||
mqtt_clientid.desc:
|
||||
"""mqtt clientid."""
|
||||
mqtt_clientid.label:
|
||||
"""mqtt clientid"""
|
||||
|
||||
client_ip_addess.desc:
|
||||
"""client ip address"""
|
||||
client_ip_addess.label:
|
||||
"""client ip address"""
|
||||
|
||||
trace_status.desc:
|
||||
"""trace status"""
|
||||
trace_status.label:
|
||||
"""trace status"""
|
||||
|
||||
time_format.desc:
|
||||
"""rfc3339 timestamp or epoch second"""
|
||||
time_format.label:
|
||||
"""rfc3339 timestamp or epoch second"""
|
||||
|
||||
time_format_g.desc:
|
||||
"""rfc3339 timestamp or epoch second"""
|
||||
time_format_g.label:
|
||||
"""rfc3339 timestamp or epoch second"""
|
||||
|
||||
trace_log_size.desc:
|
||||
"""trace log size"""
|
||||
trace_log_size.label:
|
||||
"""trace log size"""
|
||||
|
||||
node_name.desc:
|
||||
"""Node name"""
|
||||
node_name.label:
|
||||
"""Node name"""
|
||||
|
||||
max_response_bytes.desc:
|
||||
"""Maximum number of bytes to send in response"""
|
||||
max_response_bytes.label:
|
||||
"""Maximum response bytes"""
|
||||
|
||||
current_trace_offset.desc:
|
||||
"""Offset from the current trace position."""
|
||||
current_trace_offset.label:
|
||||
"""Offset from the current trace position."""
|
||||
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
emqx_prometheus_api {
|
||||
|
||||
get_prom_conf_info.desc:
|
||||
"""Get Prometheus config info"""
|
||||
get_prom_conf_info.label:
|
||||
"""Get Prometheus config info"""
|
||||
|
||||
update_prom_conf_info.desc:
|
||||
"""Update Prometheus config"""
|
||||
update_prom_conf_info.label:
|
||||
"""Update Prometheus config"""
|
||||
|
||||
get_prom_data.desc:
|
||||
"""Get Prometheus Data"""
|
||||
get_prom_data.label:
|
||||
"""Get Prometheus Data"""
|
||||
|
||||
}
|
|
@ -8,6 +8,8 @@ config_not_found.desc:
|
|||
|
||||
delete_matching_api.desc:
|
||||
"""Delete matching messages."""
|
||||
delete_matching_api.label:
|
||||
"""Delete matching messages"""
|
||||
|
||||
from_clientid.desc:
|
||||
"""The clientid of publisher."""
|
||||
|
@ -17,12 +19,18 @@ from_username.desc:
|
|||
|
||||
get_config_api.desc:
|
||||
"""View config"""
|
||||
get_config_api.label:
|
||||
"""View config"""
|
||||
|
||||
list_retained_api.desc:
|
||||
"""List retained messages."""
|
||||
list_retained_api.label:
|
||||
"""List retained messages."""
|
||||
|
||||
lookup_api.desc:
|
||||
"""Lookup a message by a topic without wildcards."""
|
||||
lookup_api.label:
|
||||
"""Lookup a message"""
|
||||
|
||||
message_detail.desc:
|
||||
"""Details of the message."""
|
||||
|
@ -59,5 +67,7 @@ update_config_success.desc:
|
|||
|
||||
update_retainer_api.desc:
|
||||
"""Update retainer config."""
|
||||
update_retainer_api.label:
|
||||
"""Update retainer config"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,11 +2,17 @@ emqx_rewrite_api {
|
|||
|
||||
list_topic_rewrite_api.desc:
|
||||
"""List all rewrite rules"""
|
||||
list_topic_rewrite_api.label:
|
||||
"""List all rewrite rules"""
|
||||
|
||||
update_topic_rewrite_api.desc:
|
||||
"""Update all rewrite rules"""
|
||||
update_topic_rewrite_api.label:
|
||||
"""Update all rewrite rules"""
|
||||
|
||||
update_topic_rewrite_api_response413.desc:
|
||||
"""Rules count exceed max limit"""
|
||||
update_topic_rewrite_api_response413.label:
|
||||
"""Rules count exceed limit"""
|
||||
|
||||
}
|
||||
|
|
|
@ -2,15 +2,21 @@ emqx_slow_subs_api {
|
|||
|
||||
clear_records_api.desc:
|
||||
"""Clear current data and re count slow topic"""
|
||||
clear_records_api.label:
|
||||
"""Clear current data and re count slow topic"""
|
||||
|
||||
clientid.desc:
|
||||
"""Message clientid"""
|
||||
|
||||
get_records_api.desc:
|
||||
"""View slow topics statistics record data"""
|
||||
get_records_api.label:
|
||||
"""View slow topics statistics record data"""
|
||||
|
||||
get_setting_api.desc:
|
||||
"""View slow subs settings"""
|
||||
get_setting_api.label:
|
||||
"""View slow subs settings"""
|
||||
|
||||
last_update_time.desc:
|
||||
"""The timestamp of last update"""
|
||||
|
@ -26,5 +32,7 @@ topic.desc:
|
|||
|
||||
update_setting_api.desc:
|
||||
"""Update slow subs settings"""
|
||||
update_setting_api.label:
|
||||
"""Update slow subs settings"""
|
||||
|
||||
}
|
||||
|
|
|
@ -14,9 +14,13 @@ enable.desc:
|
|||
|
||||
get_telemetry_data_api.desc:
|
||||
"""Get telemetry data"""
|
||||
get_telemetry_data_api.label:
|
||||
"""Get telemetry data"""
|
||||
|
||||
get_telemetry_status_api.desc:
|
||||
"""Get telemetry status"""
|
||||
get_telemetry_status_api.label:
|
||||
"""Get telemetry status"""
|
||||
|
||||
license.desc:
|
||||
"""Get license information"""
|
||||
|
@ -47,6 +51,8 @@ up_time.desc:
|
|||
|
||||
update_telemetry_status_api.desc:
|
||||
"""Enable or disable telemetry"""
|
||||
update_telemetry_status_api.label:
|
||||
"""Enable or disable telemetry"""
|
||||
|
||||
uuid.desc:
|
||||
"""Get UUID"""
|
||||
|
|
|
@ -2,104 +2,172 @@ emqx_topic_metrics_api {
|
|||
|
||||
message_qos1_in_rate.desc:
|
||||
"""QoS1 in messages rate"""
|
||||
message_qos1_in_rate.label:
|
||||
"""QoS1 in messages rate"""
|
||||
|
||||
message_out_count.desc:
|
||||
"""Out messages count"""
|
||||
message_out_count.label:
|
||||
"""Out messages count"""
|
||||
|
||||
message_qos2_out_rate.desc:
|
||||
"""QoS2 out messages rate"""
|
||||
message_qos2_out_rate.label:
|
||||
"""QoS2 out messages rate"""
|
||||
|
||||
message_qos0_in_rate.desc:
|
||||
"""QoS0 in messages rate"""
|
||||
message_qos0_in_rate.label:
|
||||
"""QoS0 in messages rate"""
|
||||
|
||||
get_topic_metrics_api.desc:
|
||||
"""List topic metrics"""
|
||||
get_topic_metrics_api.label:
|
||||
"""List topic metrics"""
|
||||
|
||||
reset_time.desc:
|
||||
"""Reset time. In rfc3339. Nullable if never reset"""
|
||||
reset_time.label:
|
||||
"""Reset time"""
|
||||
|
||||
topic_metrics_api_response400.desc:
|
||||
"""Bad request. Already exists or bad topic name"""
|
||||
topic_metrics_api_response400.label:
|
||||
"""Bad request"""
|
||||
|
||||
reset_topic_desc.desc:
|
||||
"""Topic Name. If this parameter is not present,all created topic metrics will be reset."""
|
||||
reset_topic_desc.label:
|
||||
"""Topic Name"""
|
||||
|
||||
topic_metrics_api_response409.desc:
|
||||
"""Conflict. Topic metrics exceeded max limit 512"""
|
||||
topic_metrics_api_response409.label:
|
||||
"""Conflict"""
|
||||
|
||||
post_topic_metrics_api.desc:
|
||||
"""Create topic metrics"""
|
||||
post_topic_metrics_api.label:
|
||||
"""Create topic metrics"""
|
||||
|
||||
message_dropped_rate.desc:
|
||||
"""Dropped messages rate"""
|
||||
message_dropped_rate.label:
|
||||
"""Dropped messages rate"""
|
||||
|
||||
message_qos2_in_rate.desc:
|
||||
"""QoS2 in messages rate"""
|
||||
message_qos2_in_rate.label:
|
||||
"""QoS2 in messages rate"""
|
||||
|
||||
message_in_rate.desc:
|
||||
"""In messages rate"""
|
||||
message_in_rate.label:
|
||||
"""In messages rate"""
|
||||
|
||||
message_qos0_out_rate.desc:
|
||||
"""QoS0 out messages rate"""
|
||||
message_qos0_out_rate.label:
|
||||
"""QoS0 out messages rate"""
|
||||
|
||||
message_qos2_in_count.desc:
|
||||
"""QoS2 in messages count"""
|
||||
message_qos2_in_count.label:
|
||||
"""QoS2 in messages count"""
|
||||
|
||||
message_dropped_count.desc:
|
||||
"""Dropped messages count"""
|
||||
message_dropped_count.label:
|
||||
"""Dropped messages count"""
|
||||
|
||||
topic_metrics_api_response404.desc:
|
||||
"""Not Found. Topic metrics not found"""
|
||||
topic_metrics_api_response404.label:
|
||||
"""Not Found"""
|
||||
|
||||
topic_in_path.desc:
|
||||
"""Topic string. Notice: Topic string in url path must be encoded"""
|
||||
topic_in_path.label:
|
||||
"""Topic string"""
|
||||
|
||||
action.desc:
|
||||
"""Action. Only support reset"""
|
||||
action.label:
|
||||
"""Action"""
|
||||
|
||||
message_qos0_in_count.desc:
|
||||
"""QoS0 in messages count"""
|
||||
message_qos0_in_count.label:
|
||||
"""QoS0 in messages count"""
|
||||
|
||||
message_qos1_out_rate.desc:
|
||||
"""QoS1 out messages rate"""
|
||||
message_qos1_out_rate.label:
|
||||
"""QoS1 out messages rate"""
|
||||
|
||||
topic.desc:
|
||||
"""Topic"""
|
||||
topic.label:
|
||||
"""Topic"""
|
||||
|
||||
reset_topic_metrics_api.desc:
|
||||
"""Reset telemetry status"""
|
||||
reset_topic_metrics_api.label:
|
||||
"""Reset telemetry status"""
|
||||
|
||||
create_time.desc:
|
||||
"""Create time"""
|
||||
create_time.label:
|
||||
"""Create time"""
|
||||
|
||||
metrics.desc:
|
||||
"""Metrics"""
|
||||
metrics.label:
|
||||
"""Metrics"""
|
||||
|
||||
message_qos1_out_count.desc:
|
||||
"""QoS1 out messages count"""
|
||||
message_qos1_out_count.label:
|
||||
"""QoS1 out messages count"""
|
||||
|
||||
gat_topic_metrics_data_api.desc:
|
||||
"""Get topic metrics"""
|
||||
gat_topic_metrics_data_api.label:
|
||||
"""Get topic metrics"""
|
||||
|
||||
message_qos1_in_count.desc:
|
||||
"""QoS1 in messages count"""
|
||||
message_qos1_in_count.label:
|
||||
"""QoS1 in messages count"""
|
||||
|
||||
delete_topic_metrics_data_api.desc:
|
||||
"""Delete topic metrics"""
|
||||
delete_topic_metrics_data_api.label:
|
||||
"""Delete topic metrics"""
|
||||
|
||||
message_qos0_out_count.desc:
|
||||
"""QoS0 out messages count"""
|
||||
message_qos0_out_count.label:
|
||||
"""QoS0 out messages count"""
|
||||
|
||||
topic_in_body.desc:
|
||||
"""Raw topic string"""
|
||||
topic_in_body.label:
|
||||
"""Raw topic string"""
|
||||
|
||||
message_in_count.desc:
|
||||
"""In messages count"""
|
||||
message_in_count.label:
|
||||
"""In messages count"""
|
||||
|
||||
message_qos2_out_count.desc:
|
||||
"""QoS2 out messages count"""
|
||||
message_qos2_out_count.label:
|
||||
"""QoS2 out messages count"""
|
||||
|
||||
message_out_rate.desc:
|
||||
"""Out messages rate"""
|
||||
message_out_rate.label:
|
||||
"""Out messages rate"""
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue