diff options
| author | Daniil Fedotov <daniil@rabbitmq.com> | 2017-06-14 17:44:42 +0100 |
|---|---|---|
| committer | Gerhard Lazu <gerhard@rabbitmq.com> | 2017-06-14 17:44:42 +0100 |
| commit | bc0309d9218be7786eb80f96e1065c97042905c9 (patch) | |
| tree | b3dc4d06b819cadb5ea394a0877d556a6451a06a /src | |
| parent | b6efa2dd3c0adea4212d28e43524fab7bc2a91af (diff) | |
| download | rabbitmq-server-git-bc0309d9218be7786eb80f96e1065c97042905c9.tar.gz | |
Change vm_memory_use_process_rss config to vm_memory_calculation_strategy
[#145451399]
Signed-off-by: Gerhard Lazu <gerhard@rabbitmq.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/vm_memory_monitor.erl | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/src/vm_memory_monitor.erl b/src/vm_memory_monitor.erl index 0bbca55eed..6731466c17 100644 --- a/src/vm_memory_monitor.erl +++ b/src/vm_memory_monitor.erl @@ -495,6 +495,23 @@ read_proc_file(IoDevice, Acc) -> eof -> Acc end. +-spec get_memory_calculation_strategy() -> rss | erlang. +get_memory_calculation_strategy() -> + case application:get_env(rabbit, vm_memory_calculation_strategy, rss) of + erlang -> + erlang; + rss -> + rss; + UnsupportedValue -> + rabbit_log:warning( + "Unsupported value '~p' for vm_memory_calculation_strategy. " + "Supported values: (rss|erlang). " + "Defaulting to 'rss'", + [UnsupportedValue] + ), + rss + end. + %% Memory reported by erlang:memory(total) is not supposed to %% be equal to the total size of all pages mapped to the emulator, @@ -502,8 +519,8 @@ read_proc_file(IoDevice, Acc) -> %% erlang:memory(total) under-reports memory usage by around 20% -spec get_used_memory() -> Bytes :: integer(). get_used_memory() -> - case application:get_env(rabbit, vm_memory_use_process_rss, false) of - true -> + case get_memory_calculation_strategy() of + rss -> case get_system_process_resident_memory() of {ok, MemInBytes} -> MemInBytes; @@ -513,7 +530,7 @@ get_used_memory() -> [Reason]), erlang:memory(total) end; - false -> + erlang -> erlang:memory(total) end. |
