nginx按天切割日志
Posted MacoLee
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx按天切割日志相关的知识,希望对你有一定的参考价值。
原文链接:http://www.cnblogs.com/benio/archive/2010/10/13/1849935.html 本文只节选部分内容
nginx自己没有日志分割的功能,一旦时间过长,日志文件就会变得很大,在进行日志分析的时候就会变得很困难,因此分割日志很有必要。
本次讲解的是使用shell脚本来实现按天分割日志
1 #!/bin/bash 2
3 4 # Nginx 日志文件所在的目录 5 LOGS_PATH=/usr/local/nginx/logs 6 7 # 获取昨天的 yyyy-MM-dd 8 YESTERDAY=$(date -d "yesterday" +%Y-%m-%d) 9 10 # 移动文件 11 mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log 12 13 # 向 Nginx 主进程发送 USR1 信号。USR1 信号是重新打开日志文件 14 kill -USR1 $(cat /usr/local/nginx/logs/nginx.pid)
使用定时任务定时执行脚本,即可实现按天切割日志。
本例使用的是CentOS系统:
格式:
从左向右(以空格分隔):分--时--日--月--星期-要执行的命令
0 0 * * * /usr/local/nginx/logs/cutlog.sh #每天0点执行一次cutlog.sh脚本
以上是关于nginx按天切割日志的主要内容,如果未能解决你的问题,请参考以下文章