首页 > 服务器 > Linux服务器 > 正文

Linux下nginx生成日志自动切割的实现方法

2024-09-05 23:04:16
字体:
来源:转载
供稿:网友

Linux下nginx生成日志自动切割的实现方法

1、编辑切割日志的 shell 程序,目录自定

#vi /data/nginx/cut_nginx_log.sh 

输入代码:

#!/bin/bash              # This script run at 00:00              function cutAccess() {   dir=$1   newdir="${dir}/$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")"   suffix=$(date -d "yesterday" +"%Y%m%d")   mkdir -p $newdir   mv ${dir}/access.log ${newdir}/access.$suffix.log }              cutAccess "/home/wwwlogs/www.yourdomain.com/" cutAccess "/home/wwwlogs/www.yourdomain-1.com/" cutAccess "/home/wwwlogs/www.yourdomain-2.com/"            # 重启 nginx kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 

2、加入定时任务,每天0点自动切割

# crontab -e 0 0 * * * /bin/bash /data/nginx/cut_nginx_log.sh 

3、nginx 日志格式

log_format access '$remote_addr - $remote_user [$time_local] "$request" '       '$status $body_bytes_sent "$http_referer" '       '"$http_user_agent" $http_x_forwarded_for'; access_log /home/wwwlogs/www.yourdomain.com/access.log access; 

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表