多个服务器日志的排序合并: clfmerge


以前介绍过 sort -m <(/bin/zcat /web1/access_log.20070120.gz) <(/bin/zcat /web2/access_log.20070120.gz) 对多台服务器上的日志进行排序合并,但是最近发现有时候cronolog截取日志并不干净,就是说按天截断的时候,还是有可能出现几条跨天的日志记录。March 31 => April 1时候日志排序倒错的可能性还是存在的。

最近才知道知道sort 还有-M模式,是可以对有英文月份的字段进行排序的:
-M An initial string, consisting of any amount of white space, fol-
lowed by three letters abbreviating a month name, is folded to
UPPER case and compared in the order `JAN' < `FEB' < ... <
`DEC.' Invalid names compare low to valid names.

这样就不会在 March => April 的时候出现排序倒错的问题了。

更可靠的一个工具就是logtools中的:clfmerge,合并速度比较快,而且对于日志跨天也没有问题。

当然,还有一个思路:就是将在多台服务器上的日志实时udp发送到1台(或多台)集中的日志服务器上,这样就省略了排序合并的步骤。并且适合后台快速分发到其他服务器上进行统计。

作者:车东 发表于:2007-01-22 17:01 最后更新于:2007-08-22 16:08
版权声明:可以转载,转载时请务必以超链接形式标明文章 的原始出处和作者信息及本版权声明

引用通告

以下是前来引用的链接: 多个服务器日志的排序合并: clfmerge:

» 网站的外链/内链统计:来自Google的网站管理员工具 来自 车东[Blog^2]
Google的网站管理员工具有这样一个功能:查询相应网站的外链/内链数量和明细。从控制台,点击一个已经提交的网站:控制台 > http://www.chedong.com/blog/ > 含外部链接的网页 > 以下是导出的部分 chedong.com/blog的外链数量统计: 可惜不是按外链数量排序的,可以导出成EXCEL,报表如下: http://www.chedong.com/blog/ 17471http://www.chedong.com/blog/in... [阅读更多细节]

Comments

为什么不是使用awstats自己的工具logresolvemerge.pl来合并日志呢?

发表一个评论

(如果你此前从未在此 Blog 上发表过评论,则你的评论必须在 Blog 主人验证后才能显示,请你耐心等候。)

Creative Commons License
此 Blog 中的日记遵循以下授权 Creative Commons(创作共用)授权.
Powered by
Movable Type 3.36