Add reopen/close ctl command
This commit is contained in:
parent
a427a53a30
commit
5433af4c92
|
@ -477,8 +477,38 @@ listeners([]) ->
|
|||
end, Info)
|
||||
end, esockd:listeners());
|
||||
|
||||
listeners(["reopen", Proto, ListenOn1]) ->
|
||||
ListenOn = case string:tokens(ListenOn1, ":") of
|
||||
[Port] -> list_to_integer(Port);
|
||||
[IP, Port] -> {IP, list_to_integer(Port)}
|
||||
end,
|
||||
case emqttd_app:restart_listener({list_to_atom(Proto), ListenOn, []}) of
|
||||
{ok, _Pid} ->
|
||||
io:format("Reopen ~p listen on ~p successfully.~n",
|
||||
[list_to_atom(Proto), list_to_atom(ListenOn1)]);
|
||||
{error, Error} ->
|
||||
io:format("Failed to reopen ~p listen on ~p, error:~p~n",
|
||||
[list_to_atom(Proto), list_to_atom(ListenOn1) ,Error])
|
||||
end;
|
||||
|
||||
listeners(["close", Proto, ListenOn1]) ->
|
||||
ListenOn = case string:tokens(ListenOn1, ":") of
|
||||
[Port] -> list_to_integer(Port);
|
||||
[IP, Port] -> {IP, list_to_integer(Port)}
|
||||
end,
|
||||
case emqttd_app:stop_listener({list_to_atom(Proto), ListenOn, []}) of
|
||||
ok ->
|
||||
io:format("Close ~p on ~p successfully.~n",
|
||||
[list_to_atom(Proto), list_to_atom(ListenOn1)]);
|
||||
{error, Error} ->
|
||||
io:format("Failed to close ~p on ~p, error:~p~n",
|
||||
[list_to_atom(Proto), list_to_atom(ListenOn1) ,Error])
|
||||
end;
|
||||
|
||||
listeners(_) ->
|
||||
?PRINT_CMD("listeners", "List listeners").
|
||||
?USAGE([{"listeners", "List listeners"},
|
||||
{"listeners reopen <Proto> <Port>", "Reopen a listener port"},
|
||||
{"listeners close <Proto> <Port>", "Close a listener port"}]).
|
||||
|
||||
%%--------------------------------------------------------------------
|
||||
%% Dump ETS
|
||||
|
|
|
@ -75,6 +75,8 @@ run([CmdS|Args]) ->
|
|||
_ -> ok
|
||||
catch
|
||||
_:Reason ->
|
||||
io:format("Reason:~p, get_stacktrace:~p~n",
|
||||
[Reason, erlang:get_stacktrace()]),
|
||||
{error, Reason}
|
||||
end;
|
||||
[] ->
|
||||
|
|
Loading…
Reference in New Issue