【发布时间】:2013-05-31 13:45:36
【问题描述】:
我有一个基于 mochiweb 的应用程序。 我在启动应用程序时指定了 -kernel error_logger '{file, "mylog.log"}' ,运行一段时间后,error_logger 不会输出任何内容。 当应用程序启动时,
sys:get_status(EPID).
{status,<0.5.0>,
{module,gen_event},
[[{'$ancestors',[<0.2.0>]},
{'$initial_call',{gen_event,init_it,6}}],
running,<0.2.0>,[],
[{header,"Status for event handler error_logger"},
{data,[{"Status",running},{"Parent",<0.2.0>}]},
{items,{"Installed handlers",
[{handler,sasl_report_tty_h,false,all,false},
{handler,error_logger,false,[],false},
{handler,error_logger_file_h,false,
{<0.35.0>,"mylog.log",error_logger},
false}]}}]]}
一段时间后,
sys:get_status(EPID).
{status,<0.5.0>,
{module,gen_event},
[[{'$ancestors',[<0.2.0>]},
{'$initial_call',{gen_event,init_it,6}}],
running,<0.2.0>,[],
[{header,"Status for event handler error_logger"},
{data,[{"Status",running},{"Parent",<0.2.0>}]},
{items,{"Installed handlers",
[{handler,sasl_report_tty_h,false,all,false},
{handler,error_logger,false,[],false}]}}]]}
error_logger_file_h 丢失。为什么?
【问题讨论】:
-
error_logger:info_report 为我解决了问题。
-
你有没有考虑过用 basho 的啤酒代替默认的 error_logger?它更适合网络应用程序。 github.com/basho/lager