From aa6968811986182f8b607cbf22a206c9d82949c2 Mon Sep 17 00:00:00 2001 From: Simon MacMullen Date: Mon, 6 Oct 2014 12:10:18 +0100 Subject: Classify ETS memory by owner (and thus include all msg store memory under "msg store index"). --- src/rabbit_vm.erl | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/rabbit_vm.erl b/src/rabbit_vm.erl index b1001492..4d613cce 100644 --- a/src/rabbit_vm.erl +++ b/src/rabbit_vm.erl @@ -44,8 +44,8 @@ memory() -> || Names <- distinguished_interesting_sups()], Mnesia = mnesia_memory(), - MsgIndexETS = ets_memory(rabbit_msg_store_ets_index), - MgmtDbETS = ets_memory(rabbit_mgmt_db), + MsgIndexETS = ets_memory([msg_store_persistent, msg_store_transient]), + MgmtDbETS = ets_memory([rabbit_mgmt_db]), [{total, Total}, {processes, Processes}, @@ -117,10 +117,11 @@ mnesia_memory() -> _ -> 0 end. -ets_memory(Name) -> +ets_memory(OwnerNames) -> + Owners = [whereis(N) || N <- OwnerNames], lists:sum([bytes(ets:info(T, memory)) || T <- ets:all(), - N <- [ets:info(T, name)], - N =:= Name]). + O <- [ets:info(T, owner)], + lists:member(O, Owners)]). bytes(Words) -> Words * erlang:system_info(wordsize). -- cgit v1.2.1