前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux下nginx生成日志自动切割的实现方法

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

作者头像
砸漏
发布2020-10-19 09:40:36
5730
发布2020-10-19 09:40:36
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

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

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

代码语言:javascript
复制
#vi /data/nginx/cut_nginx_log.sh 

输入代码:

代码语言:javascript
复制
#!/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点自动切割

代码语言:javascript
复制
# crontab -e 
0 0 * * * /bin/bash /data/nginx/cut_nginx_log.sh 

3、nginx 日志格式

代码语言:javascript
复制
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; 

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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档