logrotate切割nginx日志文件

logrotate切割nginx日志文件

   张吉吉     2019年10月29日 05:15     2145    

1、日志分割

       在生产环境当中,每天都会有大量的访问,到服务器,如果不将日志以特定的格式进行分割的话,如果遇到问题,想要排查,在大量的日志面前是很困难的。

       并且如果打个文件太大的话,想要打开,也是非常耗费性能的事情。

       所以为了之后的维护方便,易于排查问题,需要将日志文件进行分割。

      

2、logrotate分割nginx日志

logrotate工具会有单独的文章进行介绍,现在只介绍如何使用logrotate去分割nginx日志。

使用方法非常简单,只需要在/etc/logrotate.d/中建立一个文件,文件名称自定义。然后将下边的配置写入其中即可。

下边是详细的配置和解析:

 

/var/log/nginx/*.log {          #存放日志的路径

        daily

        missingok

        rotate 5

        compress

        delaycompress

        notifempty

        create 640 nginx adm

        sharedscripts

        postrotate

                if [ -f /var/run/nginx.pid ]; then

                        kill -USR1 `cat /var/run/nginx.pid`

                fi

        endscript

}

 

参数

详解

daily

分割周期为天,如果是周的话用weekly,月就用monthly

missingok

如果log文件丢失,继续下一个文件并且忽略错误。

rotate 5

指定保留分割文件的数量,示例保留5个,也就是5天的日志

compress

压缩分割的日志为zip格式,相反就是nocompress,不压缩

delaycompress

将前一个日志文件的压缩推迟到下一个循环周期

notifempty

空文件不分割

create 640 nginx adm

建立分割日志文件使用的用户和组

sharedscripts

运行postrotate脚本,所有日志都轮转后统一执行一次脚本。

Postrotate/endscript

文件分割完成之后需要执行的指令


文章评论

0

其他文章