summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/rabbit_control.erl16
-rw-r--r--src/rabbit_networking.erl26
-rw-r--r--src/rabbit_tests.erl2
3 files changed, 25 insertions, 19 deletions
diff --git a/src/rabbit_control.erl b/src/rabbit_control.erl
index 8ced9dd6e5..ef5fd420c5 100644
--- a/src/rabbit_control.erl
+++ b/src/rabbit_control.erl
@@ -260,7 +260,7 @@ action(list_bindings, Node, Args, Opts, Inform) ->
action(list_connections, Node, Args, _Opts, Inform) ->
Inform("Listing connections", []),
ArgAtoms = default_if_empty(Args, [user, peer_address, peer_port, state]),
- display_info_list(rpc_call(Node, rabbit_networking, info_all,
+ display_info_list(rpc_call(Node, rabbit_networking, connection_info_all,
[ArgAtoms]),
ArgAtoms);
@@ -275,8 +275,13 @@ action(list_consumers, Node, _Args, Opts, Inform) ->
Inform("Listing consumers", []),
VHostArg = list_to_binary(proplists:get_value(?VHOST_OPT, Opts)),
InfoKeys = [queue_name, channel_pid, consumer_tag, ack_required],
- display_info_list(rpc_call(Node, rabbit_consumer, info_all, [VHostArg]),
- InfoKeys);
+ case rpc_call(Node, rabbit_amqqueue, consumers_all, [VHostArg]) of
+ L when is_list(L) -> display_info_list(
+ [lists:zip(InfoKeys, tuple_to_list(X)) ||
+ X <- L],
+ InfoKeys);
+ Other -> Other
+ end;
action(trace_on, Node, [], Opts, Inform) ->
VHost = proplists:get_value(?VHOST_OPT, Opts),
@@ -318,9 +323,8 @@ action(report, Node, _Args, _Opts, Inform) ->
_ -> ok
end
end,
- GlobalQueries = [rabbit_networking, rabbit_channel],
- VHostQueries = [rabbit_amqqueue, rabbit_exchange, rabbit_binding,
- rabbit_consumer],
+ GlobalQueries = [rabbit_channel],
+ VHostQueries = [rabbit_amqqueue, rabbit_exchange, rabbit_binding],
[Report(M, []) || M <- GlobalQueries],
[Report(M, [V]) || V <- rpc_call(Node, rabbit_vhost, list, []),
M <- VHostQueries],
diff --git a/src/rabbit_networking.erl b/src/rabbit_networking.erl
index 72442aaa1e..451e56e8cb 100644
--- a/src/rabbit_networking.erl
+++ b/src/rabbit_networking.erl
@@ -18,8 +18,10 @@
-export([boot/0, start/0, start_tcp_listener/1, start_ssl_listener/2,
stop_tcp_listener/1, on_node_down/1, active_listeners/0,
- node_listeners/1, connections/0, info_keys/0, info/1, info/2,
- info_all/0, info_all/1, close_connection/2]).
+ node_listeners/1, connections/0, connection_info_keys/0,
+ connection_info/1, connection_info/2,
+ connection_info_all/0, connection_info_all/1,
+ close_connection/2]).
%%used by TCP-based transports, e.g. STOMP adapter
-export([check_tcp_listener_address/2,
@@ -57,14 +59,14 @@
-spec(active_listeners/0 :: () -> [rabbit_types:listener()]).
-spec(node_listeners/1 :: (node()) -> [rabbit_types:listener()]).
-spec(connections/0 :: () -> [rabbit_types:connection()]).
--spec(info_keys/0 :: () -> rabbit_types:info_keys()).
--spec(info/1 ::
+-spec(connection_info_keys/0 :: () -> rabbit_types:info_keys()).
+-spec(connection_info/1 ::
(rabbit_types:connection()) -> rabbit_types:infos()).
--spec(info/2 ::
+-spec(connection_info/2 ::
(rabbit_types:connection(), rabbit_types:info_keys())
-> rabbit_types:infos()).
--spec(info_all/0 :: () -> [rabbit_types:infos()]).
--spec(info_all/1 ::
+-spec(connection_info_all/0 :: () -> [rabbit_types:infos()]).
+-spec(connection_info_all/1 ::
(rabbit_types:info_keys()) -> [rabbit_types:infos()]).
-spec(close_connection/2 :: (pid(), string()) -> 'ok').
-spec(on_node_down/1 :: (node()) -> 'ok').
@@ -273,13 +275,13 @@ connections() ->
{_, ConnSup, supervisor, _}
<- supervisor:which_children({rabbit_tcp_client_sup, Node})].
-info_keys() -> rabbit_reader:info_keys().
+connection_info_keys() -> rabbit_reader:info_keys().
-info(Pid) -> rabbit_reader:info(Pid).
-info(Pid, Items) -> rabbit_reader:info(Pid, Items).
+connection_info(Pid) -> rabbit_reader:info(Pid).
+connection_info(Pid, Items) -> rabbit_reader:info(Pid, Items).
-info_all() -> cmap(fun (Q) -> info(Q) end).
-info_all(Items) -> cmap(fun (Q) -> info(Q, Items) end).
+connection_info_all() -> cmap(fun (Q) -> connection_info(Q) end).
+connection_info_all(Items) -> cmap(fun (Q) -> connection_info(Q, Items) end).
close_connection(Pid, Explanation) ->
case lists:member(Pid, connections()) of
diff --git a/src/rabbit_tests.erl b/src/rabbit_tests.erl
index dce94c56f6..1a37cdfffa 100644
--- a/src/rabbit_tests.erl
+++ b/src/rabbit_tests.erl
@@ -1162,7 +1162,7 @@ test_server_status() ->
{ok, _C} = gen_tcp:connect(H, P, []),
timer:sleep(100),
ok = info_action(list_connections,
- rabbit_networking:info_keys(), false),
+ rabbit_networking:connection_info_keys(), false),
%% close_connection
[ConnPid] = rabbit_networking:connections(),
ok = control_action(close_connection, [rabbit_misc:pid_to_string(ConnPid),