记录消息的RFC5424格式是合理的,但难以即时读取。
关于如何使它更易于阅读的技术方面的想法吗?
答案 0 :(得分:1)
您可以使用JSON模块将其解码为本地Perl结构,并使用Data::Dumper
perl -MJSON -MData::Dumper -0 -ne 'print Dumper decode_json($_)' path/to/log/file
(可选)将Dumper缩进设置为1以更好地查看:$Data::Dumper::Indent = 1
答案 1 :(得分:0)
我只是想把它放在某个地方,以防某天有人发现它的用途。
在adonis.js中工作时,我发现Logger类非常有用,但是其输出很难即时读取。
我做了一些挖掘工作,但找不到合理的解决方案,所以我花了一些力气才能得到此结果:
tail path/to/log/file -f | perl -pe 's/^.*?"level":"([^"]*)".*?"message":"((\\"|[^"])*)".*?"timestamp":"([^"]*)".*?$/\e[0;36m|\e[0m\e[1;30m $1: $4\n\r\e[0m\e[0;36m|\e[0m $2\n\r/'
这将变成RFC5424格式的日志文件条目的典型日志:
对此:
希望这对某人有用!
答案 2 :(得分:0)