nginx的性能很好就是日志不给力,不能按照每天记录一个,所有的日志都在一个文件下,达到一定大小才分割,这样对于进行每天日志的分析很麻烦,nginx自身没有这种功能只能自己写个简单的shell脚本来处理这个问题
脚本内容
mv ${log_path}/access.log ${log_path}/access.log.$(date -d yesterday "+%Y-%m-%d") ## 将日志重命名格式为acces.log.2016-03-27
${cmdPath}/nginx -s reload ##重新启动nginx,nginx会自动重新创建 一个access.log的日志
然后使用crontab启动一个定时任务,每天定时执行这个脚本
crontab -e
00 00 * * * /usr/local/nginx/sbin/cutLog.sh
脚本内容
log_path=/usr/local/nginx/logs #指定日志文件要保存位置
cmdPath = /usr/local/nginx/sbin #指定nginx命令目录mv ${log_path}/access.log ${log_path}/access.log.$(date -d yesterday "+%Y-%m-%d") ## 将日志重命名格式为acces.log.2016-03-27
${cmdPath}/nginx -s reload ##重新启动nginx,nginx会自动重新创建 一个access.log的日志
然后使用crontab启动一个定时任务,每天定时执行这个脚本
crontab -e
00 00 * * * /usr/local/nginx/sbin/cutLog.sh