网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

logrotate分割日志文件-创新互联

昨天参与做的线上项目上线了,看了下log文件居然还没有分割,考虑到可能导致log文件很大造成性能下降,赶紧做了下日志分割。Linux下有个logrotate工具可以协助日志分割,只需要配置一下参数就可以了,非常方便,于是采用这种方式直接配置了一下。logrotate分割日志文件

我是用来做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文件。

在拷贝和清空之间有一个时间差,所以可能会丢失部分日志数据。


网站标题:logrotate分割日志文件-创新互联
文章起源:http://bjjierui.cn/article/hipog.html

其他资讯