diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_control_main.erl | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/rabbit_control_main.erl b/src/rabbit_control_main.erl index 91a079da93..9d40801291 100644 --- a/src/rabbit_control_main.erl +++ b/src/rabbit_control_main.erl @@ -88,6 +88,7 @@ {trace_on, [?VHOST_DEF]}, {trace_off, [?VHOST_DEF]}, set_vm_memory_high_watermark, + set_disk_free_limit, help ]). @@ -426,6 +427,27 @@ action(set_vm_memory_high_watermark, Node, ["absolute", Arg], _Opts, Inform) -> {error_string, "Unable to parse absolute memory limit value ~p", [Arg]} end; +action(set_disk_free_limit, Node, [Arg], _Opts, Inform) -> + case rabbit_resource_monitor_misc:parse_information_unit(Arg) of + {ok, Limit} -> + Inform("Setting disk free limit on ~p to ~p bytes", [Node, Limit]), + rpc_call(Node, rabbit_disk_monitor, set_disk_free_limit, [Limit]); + {error, parse_error} -> + {error_string, "Unable to parse disk free limit value ~p", [Arg]} + end; + +action(set_disk_free_limit, Node, ["mem_relative", Arg], _Opts, Inform) -> + Frac = list_to_float(case string:chr(Arg, $.) of + 0 -> Arg ++ ".0"; + _ -> Arg + end), + Inform("Setting disk free limit on ~p to ~p of total RAM", [Node, Frac]), + rpc_call(Node, + rabbit_disk_monitor, + set_disk_free_limit, + [{mem_relative, Frac}]); + + action(set_permissions, Node, [Username, CPerm, WPerm, RPerm], Opts, Inform) -> VHost = proplists:get_value(?VHOST_OPT, Opts), Inform("Setting permissions for user \"~s\" in vhost \"~s\"", |
