Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 查看日志文件的脚本_Python_Perl_Bash_Shell_Logging - Fatal编程技术网

Python 查看日志文件的脚本

Python 查看日志文件的脚本,python,perl,bash,shell,logging,Python,Perl,Bash,Shell,Logging,当我查看服务器上的日志时,我希望在深入挖掘之前,快速了解我所面临的问题类型。我通常使用下面的一行,通过使每一行更通用并只保留唯一的行,减少了需要检查的日志行的数量 一行 cat /var/log/apache2/error.log | sed 's/.*] \(.*\)/\1/' | sed 's/[0-9]*//g' | sort | uniq 解释 |sed's/*]\(.*\)/\1/':删除最后一个括号组内和之前包含的所有内容,该括号组通常对应于客户端/系统特定信息,例如[Mon De

当我查看服务器上的日志时,我希望在深入挖掘之前,快速了解我所面临的问题类型。我通常使用下面的一行,通过使每一行更通用并只保留唯一的行,减少了需要检查的日志行的数量

一行

cat /var/log/apache2/error.log | sed 's/.*] \(.*\)/\1/' | sed 's/[0-9]*//g' | sort | uniq
解释

|sed's/*]\(.*\)/\1/'
:删除最后一个括号组内和之前包含的所有内容,该括号组通常对应于客户端/系统特定信息,例如
[Mon Dec 05 12:01:03 2011][error][client a.b.c.d]

| sed's/[0-9]*//g'
:删除数字

| sort | uniq
:只保留不同的行

为了给您一个想法,在一个包含大约500行的
/var/log/apache2/error.log
上,它过滤掉25行。当然,日志条目越通用/相似,一行程序就越有效

我现在要寻找的是一个脚本(可以是
bash
perl
python
或者其他任何东西),它可以做同样的事情,但要更高级一些,以便更有效(例如,混淆文件路径,字母ID…)和有用(计算每条消息出现的次数,占日志总数的百分比…)


你知道这样做的脚本吗?看一看。它确实会向你发送常见日志文件的每日概述。到目前为止,我只在邮件日志中使用过它,但我相信它也可以处理apache日志。

看一看。它确实会向你发送常见日志文件的每日概述。我目前为止只在邮件日志中使用过它,但我相信它也可以处理apache日志。

如果您还没有,请查看ScanerLog-1您最喜欢的搜索引擎中有很多日志分析器。无需重新发明轮子。同意上面的说法。但是如果您必须使用自己的日志,则必须发布一些示例数据,以具体说明您正在处理的问题。祝您好运。当然可以谷歌可能会给出数千条搜索结果。在StackExchange上询问的原因是,它得到了社区的验证。如果您还没有,请查看ScanerLog-1。您最喜欢的搜索引擎中有很多日志分析器。无需重新发明轮子。同意上面的说法。但如果您必须使用自己的日志分析器,您就没有了o发布一些示例数据,使您所处理的问题具体化。祝您好运。当然,谷歌可能会给出数千条结果。在StackExchange上询问的原因是,它得到了社区的验证。