Mojo::Log-简单记录器
使用Mojo::Log;#记录到STDERRmy$log=Mojo::log->new;#自定义日志文件位置和最低日志级别my$log=Mojo::log->new(路径=>'/var/log/Mojo.log',级别=>'warn');#日志消息$log->trace(“做事情”);$log->debug(“不确定这里发生了什么”);$log->info(“仅供参考:再次发生”);$log->警告(“这可能是个问题”);$log->error(“花园品种错误”);$log->致命(“Boom”);
Mojo::日志是一个简单的记录器莫霍项目。
Mojo::日志从继承所有事件Mojo::EventEmitter并且可以发射出以下新的气体。
$log->on(消息=>sub($log,$level,@lines){…});
记录新消息时发出。
$log->on(消息=>sub($log,$level,@lines){说“$level:”,@lines});
Mojo::日志实现以下属性。
我的$bool=$log->color;$log=$log->color($bool);
使用级别对日志消息着色警告
,错误
和致命的
使用术语:ANSIColor,默认为MOJO_LOG_COLOR颜色
环境变量。请注意,此属性是实验而且可能会毫无征兆地改变!
我的$cb=$log->格式;$log=$log->格式(子{…});
用于格式化日志消息的回调。
$log->格式(子($time,$level,@lines){“[2018-11-08 14:20:13.77168][28320][info]I♥ Mojolicious\n“});
my$handle=$log->handle;$log=$log->handle(IO::handle->new);
默认情况下使用的日志文件句柄“消息”事件,默认为打开“路径”或STDERR公司
.
我的$history=$log->history;$log=$log->history([[time,'debug','That going wrong']]);
最后几条记录的消息。
我的$level=$log->level;$log=$log->级别(“调试”);
活动日志级别,默认为追踪
。可用的日志级别为追踪
,调试
,信息
,警告
,错误
和致命的
,按顺序。
我的$size=$log->max_history_size;$log=$log->max_history_size(5);
要存储的最大日志消息数“历史”,默认为10
.
我的$path=$log->path$log=$log->path('/var/log/mojo.log');
使用的日志文件路径“手柄”.
我的$bool=$log->short;$log=$log->short($bool);
生成不带时间戳但带有日志日志级别前缀的短日志消息,适用于systemd环境,默认为MOJO_LOG_SHORT公司
环境变量。
Mojo::日志从继承所有方法Mojo::EventEmitter并实现了以下新功能。
$log->追加(“[2018-11-08 14:20:13.77168][28320][info]I♥ Mojolicious\n“);
将消息附加到“手柄”.
我的$messages=$log->capture;我的$messages=$log->capture('debug');
只要返回的对象存在,就捕获日志消息,这对于测试日志消息很有用。
#测试日志消息我的$messages=$log->capture('trace');$log->致命(“发生了一些非常糟糕的事情”);$log->trace(“只是一些调试信息”);像$messages、qr/Something very bad happened/、'logs contain fatal message';像$messages->[-1]、qr/Just some debug information/、“trace message was last”;undef$消息;
my$new=$log->context(“[extra]”,“[information]”);
构建一个新的孩子Mojo::日志对象,该对象将在每个日志消息中包含上下文信息。
#带上下文的日志my$log=Mojo::log->new;我的$context=$log->context(“[17a60115]”);$context->debug(“这是一条包含上下文信息的日志消息”);$context->info(“和另一个”);
$log=$log->debug(“你搞砸了,但没关系”);$log=$log->debug('All','cool');$log=$log->调试(子{…});
发射“消息”事件和日志调试
消息。
$log=$log->error(“这次你真的搞砸了”);$log=$log->error(“哇”,“严重”);$log=$log->error(子{…});
发射“消息”事件和日志错误
消息。
$log=$log->致命(“超过…”);$log=$log->致命(“再见”,“再见”);$log=$log->fatal(sub{…});
发射“消息”事件和日志致命的
消息。
$log=$log->信息(“你很糟糕,但你已经知道了”);$log=$log->info(“确定”,“然后”);$log=$log->info(子{…});
发射“消息”事件和日志信息
消息。
my$bool=$log->is_level('debug');
检查活动日志“级别”.
#真的$log->level('debug')->is_level;$log->level('debug')->is_level['info');#False(错误)$log->level('info')->is_level('debug');$log->level('fatal')->is_level['warn');
my$log=Mojo::log->new;my$log=Mojo::log->new(级别=>'warn');my$log=Mojo::log->new({level=>'warn'});
构建新的Mojo::日志对象并订阅“消息”默认记录器的事件。
$log=$log->trace(“Whatever”);$log=$log->trace(“谁”,“关心”);$log=$log->trace(子{…});
发射“消息”事件和日志追踪
消息。
$log=$log->warn(“不要这样,Dave…”);$log=$log->warn(“否”,“真的”);$log=$log->warn(子{…});
发射“消息”事件和日志警告
消息。
Mojolicious公司,Mojolicious::指南,https://mojolicious.org.