设为首页 收藏本站
查看: 776|回复: 0

[经验分享] apache 日志按天记录

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-12-31 10:29:07 | 显示全部楼层 |阅读模式
在apache的配置文件中找到
ErrorLog logs/error_log
CustomLog logs/access_log common

Linux系统配置方法:

将其改为 
ErrorLog "| /usr/local/apache/bin/rotatelogs /home/logs/www/%Y_%m_%d_error_log 86400 480"
CustomLog "| /usr/local/apache/bin/rotatelogs /home/logs/www/%Y_%m_%d_access_log 86400 480" common

Windows系统下配置方法:

#ErrorLog "|bin/rotatelogs.exe logs/vicp_net_error-%y%m%d.log 86400 480"
#CustomLog "|bin/rotatelogs.exe logs/vicp_net_access-%y%m%d.log 86400 480" common

第一次不知道设置480这个参数,导致日志记录时间和服务器时间相差8小时,原来是rotatelogs有一个offset参数,表示相对于UTC的时差分钟数,中国是第八时区,相差480分钟。86400是表示1天。

附rotatelogs说明

rotatelogs logfile [ rotationtime [ offset ]] | [ filesizeM ]

选项
logfile
它加上基准名就是日志文件名。如果logfile中包含’%',则它会被视为用于的strftime(3)的格式字串;否则,它会被自动加上以秒为单位的.nnnnnnnnnn后缀。这两种格式都表示新的日志开始使用的时间。
rotationtime
日志文件回卷的以秒为单位的间隔时间
offset
相对于UTC的时差的分钟数。如果省略,则假定为0,并使用UTC时间。比如,要指定UTC时差为-5小时的地区的当地时间,则此参数应为-300。
filesizeM
指定回卷时以兆字节为单位的后缀字母M的文件大小,而不是指定回卷时间或时差。

 

 

假如你的apache的安装目录为/usr/local/apache_test/它的日志文件在/usr/local/apache_test/logs/下面,通常访问日志为access_log,那么如何来做呢?
         1.在/etc/logrotate.d/目录下创建一个文件rotate_apache,运行命令touch rotate_apache(注:该文件用来告诉logrotate如何来按天轮循生成日志文件)
         2.编辑该文件vi rotate_apache,输入以下内容:
/usr/local/apache_test/logs/access_log{
missingok
daily
rotate 10
postrotate
/bin/kill -HUP `cat /usr/local/apache_test/logs/httpd.pid 2>/dev/null` 2> /dev/null || true
endscript
compress
}
3.OK了,就这么简单,之后你就会发现在apache的日志目录下会每天都产生一个文件,文件名如下:
                access_log.1.gz
                access_log.2.gz
                ………………..
         这个工具(logrotate)以一种灵活的方式来对系统中的日志进行统一的管理,工作原理是这样的:它本身被加到了linux系统中的crontab中(但是我们从crontab -l中是看不到的),所以默认就会每天去执行一次,执行的配置文件为/etc/logrotate.conf,它会通过里面定义的内容来执行日志的切换工作,里面有好多可选的配置方式和参数。
 
 
cronolog
在apache的FAQ中,推荐了经过近2年发展已经比较成熟的一个工具cronolog:安装很简单:configure=> make=> make install
他的一个配置的例子会让你了解它有多么适合日志按天轮循:对httpd.conf做一个很小的修改就能实现:
TransferLog "|/usr/sbin/cronolog /var/log/%Y%m%d.log"
ErrorLog "|/usr/sbin/cronolog /var/%Y%m%d-errors.log"
然后:日志将写入
/var/log/20090901.log
/var/log/20090901-errors.log
目录如果不存在的话,将自动创建

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-321929-1-1.html 上篇帖子: apache mod_jk编译安装 下篇帖子: Apache与Tomcat比较联系
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表