当前位置:首页>网络学院>服务器>Mail服务器教程>文章内容

多服务器的日志合并统计——apache日志的cronolog轮循和webalizer合并统计 评注

[ 来源: | 作者: | 时间:2007-07-21 | 收藏 | 推荐 ] 【

ache/log/access_log_yesterday
            的话:你还需要:马上运行一下:apache restart 否则:apache会因为的日志文件句柄丢失不知道将日志记录到哪里去了。这样归档每天子夜重启apache服务会受到影响。
            比较简便不影响服务的方法是:先复制,后清空
            cp /path/to/apache/log/access_log /path/to/apache/log/access_log_yesterday
            echo >/path/to/apache/log/access_log

            严肃的分析员会这样做发现一个问题:
            但cp不可能严格保证严格的0点截断。加入复制过程用了6秒,截断的access_log_yesterday日志中会出现复制过程到00: 00:06期间的日志。对于单个日志统计这些每天多出来几百行日志是没有问题的。但对于多个日志在跨月的1天会有一个合并的排序问题:

www.it55.com在线教程


            [31/Mar/2002:59:59:59 +0800]
            [31/Mar/2002:23:59:59 +0800]
            [01/Apr/2002:00:00:00 +0800]
            [01/Apr/2002:00:00:00 +0800]

            要知道[01/Apr/2002:00:00:00 这个字段是不可以进行“跨天排序”的。因为日期中使用了dd/mm/yyyy,月份还是英文名,如果按照字母排序,很有可能是这样的结果:排序导致了日志的错误
            [01/Apr/2002:00:00:00 +0800]
            [01/Apr/2002:00:00:00 +0800]
            [01/Apr/2002:00:00:00 +0800]
            [01/Apr/2002:00:00:00 +0800]
免费资源www.it55.com

            [01/Apr/2002:00:00:00 +0800]
            [01/Apr/2002:00:00:00 +0800]
            [01/Apr/2002:00:00:00 +0800]
            [31/Mar/2002:59:59:59 +0800]
            [31/Mar/2002:59:59:59 +0800]
            [31/Mar/2002:23:59:59 +0800]
            [31/Mar/2002:59:59:59 +0800]
            [31/Mar/2002:23:59:59 +0800]

            这些跨天过程中的非正常数据对于webalizer等分析工具来说简直就好像是吃了一个臭虫一样,运行的结果是:它可能会把前一个月所有的数据都丢失!因此这样的数据会有很多风险出现在处理上月最后一天的数据的过程中。
IT资讯之家 www.it55.com


        

http://www.it55.com/

(编辑:IT资讯之家 www.it55.com

网友评论

[以下评论为网友观点,不代表本站。请自觉遵守互联网相关政策法规,所有连带责任均有评论者自负。]
[不超过250字]