lager loglevel说明
- info - info and higher (>= is implicit)
- =debug - only the debug level
- !=info - everything but the info level
- <=notice - notice and below
- <warning - anything less than warning
lager set_loglevel(在运行时修改lager后台的loglevel)
- lager:set_loglevel/2
例:lager:set_loglevel(lager_console_backend, debug). 将lager_console_backend的loglevel修改为debug - lager:set_loglevel/3
例:lager:set_loglevel(lager_file_backend, "log/trade_hub.console.log", info).将lager_file_backend中的log/trade_hub.console.log的loglevel修改为info
lager trace(根据lager日志的属性捕获日志并做重定向处理,属性有PID,模块名,函数名,或自定义的属性)
- lager:trace_console/2
例:lager:trace_console([{module, ctp_bind_investor}],info). (将ctp_bind_investor模块中 >=info 的日志打印到终端上) - lager:trace_console/1(和lager:trace_console/2功能相同,但是loglevel默认为debug)
例:lager:trace_console([{request, 117}]). - lager:trace_file/3
例:lager:trace_file("log/error.log", [{module, "ctp_bind_investor"}], error).(将ctp_bind_investor模块中 >=error 的日志输出到error.log中) - lager:trace_file/2(和lager:trace_file/3功能相同,但是loglevel默认为debug)
例:lager:trace_file("log/error.log", [{module, "ctp_bind_investor"}]). - lager:stop_trace/1(停止trace)
例:{ok,Trace} = lager:trace_console([{request, 117}]).
lager:stop_trace(Trace). - lager:clear_all_traces/0(停止所有trace)
例:lager:clear_all_traces(). - lager:status/0(显示所有lager后台的loglevel和所有trace)
例:lager:status().
运行结果
Lager status: File log/error.log at level none File log/trade_hub.console.log at level info File log/trade_hub.error.log at level error Console at level debug Active Traces: Tracing messages matching [{module,"ctp_bind_investor"}] at level error to {lager_file_backend, "log/error.log"} Tracing messages matching [{module,ctp_bind_investor}] at level info to {lager_file_backend, "log/error.log"} ok