From a4b30ea77cda182b2e158594af5c5a4f1236a15e Mon Sep 17 00:00:00 2001 From: Zaiming Shi Date: Tue, 23 Mar 2021 19:58:22 +0100 Subject: [PATCH] feat(emqx): Add backtrace_depth configuration --- etc/emqx.conf | 2 ++ priv/emqx.schema | 5 +++++ src/emqx_app.erl | 9 +++++++-- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/etc/emqx.conf b/etc/emqx.conf index 70320e91b..1eebed652 100644 --- a/etc/emqx.conf +++ b/etc/emqx.conf @@ -301,6 +301,8 @@ node.crash_dump = {{ platform_log_dir }}/crash.dump node.dist_listen_min = 6369 node.dist_listen_max = 6369 +node.backtrace_depth = 16 + ## CONFIG_SECTION_BGN=rpc ====================================================== ## RPC Mode. diff --git a/priv/emqx.schema b/priv/emqx.schema index 2e1248c50..d254c24e6 100644 --- a/priv/emqx.schema +++ b/priv/emqx.schema @@ -334,6 +334,11 @@ end}. hidden ]}. +{mapping, "node.backtrace_depth", "emqx.backtrace_depth", [ + {default, 16}, + {datatype, integer} +]}. + %%-------------------------------------------------------------------- %% RPC %%-------------------------------------------------------------------- diff --git a/src/emqx_app.erl b/src/emqx_app.erl index ca1a2ce09..ca6ce1073 100644 --- a/src/emqx_app.erl +++ b/src/emqx_app.erl @@ -33,6 +33,7 @@ %%-------------------------------------------------------------------- start(_Type, _Args) -> + set_backtrace_depth(), print_otp_version_warning(), print_banner(), ekka:start(), @@ -40,8 +41,7 @@ start(_Type, _Args) -> ok = start_autocluster(), ok = emqx_plugins:init(), _ = emqx_plugins:load(), - emqx_boot:is_enabled(listeners) - andalso (ok = emqx_listeners:start()), + emqx_boot:is_enabled(listeners) andalso (ok = emqx_listeners:start()), register(emqx, self()), ok = emqx_alarm_handler:load(), print_vsn(), @@ -53,6 +53,11 @@ stop(_State) -> emqx_boot:is_enabled(listeners) andalso emqx_listeners:stop(). +set_backtrace_depth() -> + Depth = application:get_env(?APP, backtrace_depth, 16), + _ = erlang:system_flag(backtrace_depth, Depth), + ok. + %%-------------------------------------------------------------------- %% Print Banner %%--------------------------------------------------------------------