File tree Expand file tree Collapse file tree 2 files changed +21
-4
lines changed Expand file tree Collapse file tree 2 files changed +21
-4
lines changed Original file line number Diff line number Diff line change @@ -16,7 +16,7 @@ define PROJECT_ENV
1616 {ssl_options, []},
1717 {vm_memory_high_watermark, 0.4},
1818 {vm_memory_high_watermark_paging_ratio, 0.5},
19- {vm_memory_use_process_rss, true },
19+ {vm_memory_calculation_strategy, rss },
2020 {memory_monitor_interval, 2500},
2121 {disk_free_limit, 50000000}, %% 50MB
2222 {msg_store_index_module, rabbit_msg_store_ets_index},
Original file line number Diff line number Diff line change @@ -495,15 +495,32 @@ read_proc_file(IoDevice, Acc) ->
495495 eof -> Acc
496496 end .
497497
498+ -spec get_memory_calculation_strategy () -> rss | erlang .
499+ get_memory_calculation_strategy () ->
500+ case application :get_env (rabbit , vm_memory_calculation_strategy , rss ) of
501+ erlang ->
502+ erlang ;
503+ rss ->
504+ rss ;
505+ UnsupportedValue ->
506+ rabbit_log :warning (
507+ " Unsupported value '~p ' for vm_memory_calculation_strategy. "
508+ " Supported values: (rss|erlang). "
509+ " Defaulting to 'rss'" ,
510+ [UnsupportedValue ]
511+ ),
512+ rss
513+ end .
514+
498515
499516% % Memory reported by erlang:memory(total) is not supposed to
500517% % be equal to the total size of all pages mapped to the emulator,
501518% % according to http://erlang.org/doc/man/erlang.html#memory-0
502519% % erlang:memory(total) under-reports memory usage by around 20%
503520-spec get_used_memory () -> Bytes :: integer ().
504521get_used_memory () ->
505- case application : get_env ( rabbit , vm_memory_use_process_rss , false ) of
506- true ->
522+ case get_memory_calculation_strategy ( ) of
523+ rss ->
507524 case get_system_process_resident_memory () of
508525 {ok , MemInBytes } ->
509526 MemInBytes ;
@@ -513,7 +530,7 @@ get_used_memory() ->
513530 [Reason ]),
514531 erlang :memory (total )
515532 end ;
516- false ->
533+ erlang ->
517534 erlang :memory (total )
518535 end .
519536
You can’t perform that action at this time.
0 commit comments