From dcf5aefea0363cc96d404591696e306fc323d8f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Chmielowski?= Date: Mon, 15 Jun 2015 14:57:07 +0200 Subject: Add option to set net_ticktime (EJAB-1742) --- src/ejabberd_app.erl | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/ejabberd_app.erl b/src/ejabberd_app.erl index 46fbf81dc..30f34aff4 100644 --- a/src/ejabberd_app.erl +++ b/src/ejabberd_app.erl @@ -54,7 +54,7 @@ start(normal, _Args) -> ejabberd_admin:start(), gen_mod:start(), ejabberd_config:start(), - set_loglevel_from_config(), + set_settings_from_config(), acl:start(), shaper:start(), connect_nodes(), @@ -234,12 +234,17 @@ delete_pid_file() -> file:delete(PidFilename) end. -set_loglevel_from_config() -> +set_settings_from_config() -> Level = ejabberd_config:get_option( loglevel, fun(P) when P>=0, P=<5 -> P end, 4), - ejabberd_logger:set(Level). + ejabberd_logger:set(Level), + Ticktime = ejabberd_config:get_option( + net_ticktime, + opt_type(net_ticktime), + 60), + net_kernel:set_net_ticktime(Ticktime). start_apps() -> crypto:start(), @@ -252,6 +257,8 @@ start_apps() -> ejabberd:start_app(p1_zlib), ejabberd:start_app(p1_cache_tab). +opt_type(net_ticktime) -> + fun (P) when is_integer(P), P > 0 -> P end; opt_type(cluster_nodes) -> fun (Ns) -> true = lists:all(fun is_atom/1, Ns), Ns end; opt_type(loglevel) -> @@ -263,4 +270,4 @@ opt_type(modules) -> end, Mods) end; -opt_type(_) -> [cluster_nodes, loglevel, modules]. +opt_type(_) -> [cluster_nodes, loglevel, modules, net_ticktime]. -- cgit v1.2.3