博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用shell脚本切割nginx日志并压缩
阅读量:6252 次
发布时间:2019-06-22

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

一个nginx切割日志的脚本,自动删除7天前日志

#!/bin/bash LOGS_PATH=/home/wwwlogs YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)

按天切割日志

mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log

向 Nginx 主进程发送 USR1 信号,重新打开日志文件,否则会继续往mv后的文件写内容,导致切割失败.

kill -USR1 ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'

压缩

gzip -9 ${LOGS_PATH}/access_${YESTERDAY}.log

删除7天前的日志

cd ${LOGS_PATH}

find . -mtime +7 -name "201-9" | xargs rm -f
exit 0

可以通过grep、awk找到nginx master也可以直接kill -USR1 pid
kill -USR1 ps aux | grep "nginx: master process" | grep -v grep | awk '{print $2}'
kill -USR1 cat /usr/local/nginx/logs/nginx.pid

转载地址:http://kefsa.baihongyu.com/

你可能感兴趣的文章
26期20180627 更换国内源 yum下载rpm包 源码包安装
查看>>
使用阿里云的k8s部署访问环境
查看>>
大数据工程师微职位学习分享
查看>>
企业使用云服务器的优势
查看>>
dubbo Servlet Bridge Server时同时支持hessian和webservice
查看>>
lanmp一键安装包安装说明(包括lamp,lnmp,lnamp安装)
查看>>
Shell命令-文件及内容处理之head、tail
查看>>
aws上的vsftp服务的坎坷经历
查看>>
关于SVN 目录结构(2)
查看>>
Android碎碎念 -- 视频播放器
查看>>
关于51单片机“外部中断触发方式”的经验总结
查看>>
2.文件管理
查看>>
Oracle中TO_DATE TO_CHAR格式
查看>>
oracle的触发器增删改实例
查看>>
hive 自定义函数 udf
查看>>
哈哈校园[上海]招募Java/J2EE工程师
查看>>
Docker在CentOS 7 环境下的安装及基本操作入门
查看>>
【Spring Boot 系列 自定义启动器Starter】
查看>>
Centos 7.4版本升级内核3.10+ 到4+过程
查看>>
ssh 免密码登录的设置遇到问题
查看>>