control commands

This commit is contained in:
Feng Lee 2015-03-23 00:06:31 +08:00
parent 18a5da6691
commit 3a7103a728
2 changed files with 47 additions and 8 deletions

View File

@ -38,6 +38,8 @@
-export([status/1,
broker/1,
stats/1,
metrics/1,
cluster/1,
listeners/1,
bridges/1,
@ -84,12 +86,12 @@ userdel([Username]) ->
broker([]) ->
Funs = [sysdescr, version, uptime, datetime],
[?PRINT("~s: ~s~n", [Fun, emqttd_broker:Fun()]) || Fun <- Funs];
[?PRINT("~s: ~s~n", [Fun, emqttd_broker:Fun()]) || Fun <- Funs].
broker(["stats"]) ->
[?PRINT("~s: ~p~n", [Stat, Val]) || {Stat, Val} <- emqttd_broker:getstats()];
stats([]) ->
[?PRINT("~s: ~p~n", [Stat, Val]) || {Stat, Val} <- emqttd_broker:getstats()].
broker(["metrics"]) ->
metrics([]) ->
[?PRINT("~s: ~p~n", [Metric, Val]) || {Metric, Val} <- emqttd_metrics:all()].
listeners([]) ->

View File

@ -149,8 +149,8 @@ case "$1" in
;;
broker)
if [ $# -gt 2 ]; then
echo "Usage: $SCRIPT broker [status | stats | metrics]"
if [ $# -ne 1 ]; then
echo "Usage: $SCRIPT broker"
exit 1
fi
@ -165,6 +165,41 @@ case "$1" in
$NODETOOL rpc emqttd_ctl broker $@
;;
stats)
if [ $# -ne 1 ]; then
echo "Usage: $SCRIPT stats"
exit 1
fi
# Make sure the local node IS running
RES=`$NODETOOL ping`
if [ "$RES" != "pong" ]; then
echo "emqttd is not running!"
exit 1
fi
shift
$NODETOOL rpc emqttd_ctl stats $@
;;
metrics)
if [ $# -ne 1 ]; then
echo "Usage: $SCRIPT metrics"
exit 1
fi
# Make sure the local node IS running
RES=`$NODETOOL ping`
if [ "$RES" != "pong" ]; then
echo "emqttd is not running!"
exit 1
fi
shift
$NODETOOL rpc emqttd_ctl metrics $@
;;
bridges)
# Make sure the local node IS running
RES=`$NODETOOL ping`
@ -223,8 +258,10 @@ case "$1" in
*)
echo "Usage: $SCRIPT"
echo " status #query status"
echo " broker [stats | metrics] #query broker stats or metrics"
echo " status #query broker status"
echo " broker #query broker version, uptime and description"
echo " stats #query broker statistics of clients, topics, subscribers"
echo " metrics #query broker metrics"
echo " cluster [<Node>] #query or cluster nodes"
echo " plugins list #query loaded plugins"
echo " plugins load <Plugin> #load plugin"