博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
每日一shell(八)nginx日志切割
阅读量:6440 次
发布时间:2019-06-23

本文共 1170 字,大约阅读时间需要 3 分钟。

nginx日志会随着访问量而变大,较大的日志会影响分析日志时对日志的分析和处理,我们可以使用shell对nginx日志进行定时分割,以周或者天,对于时间久的日志可以定时删除,减小磁盘的浪费

代码:

# cat logrotate.sh #!/bin/bash#rotate nginx logs#writen by AikerPATH=$PATH://usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/binlogs_path=/var/log/nginxd=$(date -d "-1 day" +%F)mv $logs_path/access.log $logs_path/access_${d}.logmv $logs_path/error.log $logs_path/error_${d}.log#向nginx主进程发送USR1信号重新打开日志文件kill -USR1 $(cat /var/run/nginx.pid)

针对多个日志的切割:

#!/bin/bash#rotate nginx logs#writen by AikerPATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/binlogs_path=/var/log/nginxd=$(date -d "-1 day" +%F)cd ${logs_path}for logs in `ls *.log`    do        mv $logs $logs-$ddone#向nginx主进程发送USR1信号重新打开日志文件也可以:/bin/kill -HUP `cat $nginx_pid`kill -USR1 $(cat /var/run/nginx.pid)

定时切割日志:

crontab -e

0 0 * * 0 /root/script/logrotate.sh > /dev/null 2>&1
# ll /var/log/nginx/                         total 64-rw-r--r-- 1 nginx root  3205 Feb 12 11:42 access_2018-02-11.log-rw-r--r-- 1 nginx root 41951 Feb 12 11:53 access.log-rw-r--r-- 1 nginx root 14441 Feb  9 10:12 error_2018-02-11.log-rw-r--r-- 1 nginx root     0 Feb 12 11:43 error.log

转载于:https://blog.51cto.com/m51cto/2071304

你可能感兴趣的文章
ecshop在其他的页面调用首页的flash主广告的方法
查看>>
lamp安装
查看>>
BDDynamicGridViewController
查看>>
today.getYear()函数浏览器不同,显示不一样
查看>>
SpringMVC传参问题
查看>>
ELF文件解析
查看>>
python3 面向对象的创建及实例的属性
查看>>
我的友情链接
查看>>
配置android开发环境
查看>>
我眼中的IBM之四:人事制度II
查看>>
HTML5事件——visibilitychange 标签可见性(判断当前页面是否为选中状态)
查看>>
Ext singleton
查看>>
【No.2 Ionic】超级逗表情 App
查看>>
Kubernetes 集群日志管理 - 每天5分钟玩转 Docker 容器技术(180)
查看>>
Kubernetes 生产环境安装部署 基于 Kubernetes v1.14.0 之 部署规划
查看>>
安装python 3.6.1
查看>>
mysql 5.7配置小记
查看>>
snort-libpcap问题
查看>>
十款PHP开发框架横向比较
查看>>
前台页面图片切换
查看>>