从品牌网站建设到网络营销策划,从策略到执行的一站式服务
我是用来做nginx日志文件分割的,我的配置文件如下:
成都创新互联从2013年创立,先为金平等服务建站,金平等地企业,进行企业商务咨询服务。为金平企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。在/etc/logrotate.d/目录下创建一个配置文件例如nginx,文件内容如下:
/search/nginx/logs/access_log /search/nginx/logs/error.log{
daily
dateext
extension .log
create
rotate 60
notifempty
sharedscripts
postrotate
[ ! -f /usr/local/nginx/sbin/nginx.pid ] || kill -USR1 `cat /usr/local/nginx/sbin/nginx.pid`
endscript
}
字段的含义分别是:
daily 每天分割一次
dateext 表示用日志格式来表示日志文件,这样日志名就改成access-20140626
extension .log 表示在日志名后面再加上 .log后缀名 日知名编程access-20140626.log
create 表示分割好之后创建新的日志文件 即创建access.log
rotate 60 表示备份这么多份
notifempty 表示日志文件如果为空的话就不做分割
sharedscripts 表示多个日志文件之间 只执行一次logrotate
postrotate
[ ! -f /usr/local/nginx/sbin/nginx.pid ] || kill -USR1 `cat /usr/local/nginx/sbin/nginx.pid`
endscript
表示的是执行完logrotate之后,执行那个命令
还有很多其他的参数,具体可以 man logrotate查看。
我在配置完logrotate之后以为得置crontab文件 来让logrotate定时执行,于是:
crontab -e
59 23 * * * /usr/sbin/logrotate -f /etc/logrotate.d/nginx
结果第二天来看发现分割了两次,23:59的时候分割了一次,04:02的时候也分割了一次,才知道原来logrotate是会自动执行的,时间是4点的时候,也可以修改配置文件来修改时间,所以不用再设定crontab文件。
在拷贝和清空之间有一个时间差,所以可能会丢失部分日志数据。
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图