diff options
author | Paweł Chmielowski <pchmielowski@process-one.net> | 2015-06-15 14:57:07 +0200 |
---|---|---|
committer | Paweł Chmielowski <pchmielowski@process-one.net> | 2015-06-15 14:57:07 +0200 |
commit | dcf5aefea0363cc96d404591696e306fc323d8f5 (patch) | |
tree | 160d40ac55a8bdfd0c56fbf3e3abd9031ca8ca76 /src | |
parent | Fix bug introduced in commit b88fa6f6174 (diff) |
Add option to set net_ticktime (EJAB-1742)
Diffstat (limited to 'src')
-rw-r--r-- | src/ejabberd_app.erl | 15 |
1 files changed, 11 insertions, 4 deletions
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]. |