add_handlers(HandlerConfig) -> ok | {error, term()}
OTP 21.0
类型:
HandlerConfig = [config_handler()]
config_handler() =
{处理程序,handler_id(),module(),handler_config()}
{处理程序,handler_id(),module(),handler_config()}
自定义 Logger 处理程序应使用此函数,以使配置保持一致,无论系统使用哪个处理程序。正常用法是在处理程序所需的进程启动后添加对 logger:add_handlers/1
的调用,并将应用程序的 logger
配置作为参数传递。例如:
-behaviour(application).
start(_, []) ->
case supervisor:start_link({local, my_sup}, my_sup, []) of
{ok, Pid} ->
ok = logger:add_handlers(my_app),
{ok, Pid, []};
Error -> Error
end.
这读到logger
配置参数来自my_app
应用程序并启动配置的处理程序。配置内容使用相同的规则记录器处理程序配置.
如果该处理程序旨在替换默认处理程序,则必须在添加新处理程序之前禁用内核的默认处理程序。禁用内核处理程序并添加自定义处理程序的 sys.config
文件可能如下所示:
[{kernel,
[{logger,
%% Disable the default Kernel handler
[{handler, default, undefined}]}]},
{my_app,
[{logger,
%% Enable this handler as the default
[{handler, default, my_handler, #{}}]}]}].
相关用法
- erlang add_table_copy(Tab, N, ST)用法及代码示例
- erlang add_table_index(Tab, I)用法及代码示例
- erlang adler32(OldAdler, Data)用法及代码示例
- erlang adler32_combine(FirstAdler, SecondAdler, SecondSize)用法及代码示例
- erlang adler32(Z, PrevAdler, Data)用法及代码示例
- erlang asin用法及代码示例
- erlang acos用法及代码示例
- erlang atan用法及代码示例
- erlang abs用法及代码示例
- erlang all用法及代码示例
- erlang any用法及代码示例
- erlang append用法及代码示例
- erlang atom_to_list用法及代码示例
- erlang atom_to_binary用法及代码示例
- erlang absname(Filename)用法及代码示例
- erlang abs(Float)用法及代码示例
- erlang alias()用法及代码示例
- erlang append_element(Tuple1, Term)用法及代码示例
- erlang apply(Module, Function, Args)用法及代码示例
- erlang atom_to_binary(Atom, Encoding)用法及代码示例
- erlang atom_to_list(Atom)用法及代码示例
- erlang allocations(Options)用法及代码示例
- erlang all(Pred, Q :: queue(Item))用法及代码示例
- erlang any(Pred, Q :: queue(Item))用法及代码示例
- erlang atomic_load(Modules)用法及代码示例
注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 add_handlers(HandlerConfig) -> ok | {error, term()}。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。