summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@lshift.net>2008-11-25 13:39:52 +0000
committerSimon MacMullen <simon@lshift.net>2008-11-25 13:39:52 +0000
commit4221321beb122aa1e89bb49ad2ea65b02d666a00 (patch)
tree223d6ea1c57cadd47654bc56f96cc30a7fba1b38
parent06c9858ef175b328a033f61967f33f277d3924d3 (diff)
downloadrabbitmq-server-git-4221321beb122aa1e89bb49ad2ea65b02d666a00.tar.gz
Remove the MEMORY_CHECK_FRACTION define.
-rw-r--r--src/rabbit_linux_memory.erl14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/rabbit_linux_memory.erl b/src/rabbit_linux_memory.erl
index 69708519f3..d796bc64b3 100644
--- a/src/rabbit_linux_memory.erl
+++ b/src/rabbit_linux_memory.erl
@@ -35,14 +35,16 @@
-define(SERVER, ?MODULE).
-define(MEMORY_CHECK_INTERVAL, 1000).
--define(MEMORY_CHECK_FRACTION, 0.95).
+
+-record(state, {memory_fraction, alarm}).
start_link() ->
gen_server:start_link({local, ?SERVER}, ?MODULE, [], []).
init(_Args) ->
- {ok, no_alarm, ?MEMORY_CHECK_INTERVAL}.
+ Fraction = os_mon:get_env(memsup, system_memory_high_watermark),
+ {ok, #state{alarm = no_alarm, memory_fraction = Fraction}, ?MEMORY_CHECK_INTERVAL}.
handle_call(_Request, _From, State) ->
@@ -63,12 +65,12 @@ handle_info(_Info, State) ->
- dict:fetch("Buffers", Dict)
- dict:fetch("Cached", Dict),
if
- MemUsed / MemTotal > ?MEMORY_CHECK_FRACTION ->
- NewState = alarm;
+ MemUsed / MemTotal > State#state.memory_fraction ->
+ NewState = State#state{alarm = alarm};
true ->
- NewState = no_alarm
+ NewState = State#state{alarm = no_alarm}
end,
- case {State, NewState} of
+ case {State#state.alarm, NewState#state.alarm} of
{no_alarm, alarm} ->
alarm_handler:set_alarm({system_memory_high_watermark, []}),
ok;