yin.kh

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

利用 crontab + shell 来实现nginx的 access log 按天切割,便于统计。具体实现如下:

shell:

#! /bin/sh
NGINX_DIR=/data/apps/nginx
LOGS_PATH=$NGINX_DIR/logs
## 获取昨天的 yyyy-MM-dd
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
## 移动文件
mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log
## 向 Nginx 主进程发送 USR1 信号。USR1 信号是重新打开日志文件
kill -USR1 $(cat $NGINX_DIR/logs/nginx.pid)

 

crontab:

0 0 * * * sh /data/apps/nginx/sbin/seg_log.sh

 

posted on 2016-06-14 14:20  yin.kh  阅读(241)  评论(0编辑  收藏  举报