Nginx日志每天自动分割
实现的功能是在每天凌晨00:00把前一天的Nginx日志access.log重命名为access-xxxx-xx-xx.log格式,例如:access-2016-10-01.log。
nginx日志按每分钟自动切割脚本如下:
新建shell脚本:vim /usr/local/nginx/nginx_log.sh
#!/bin/bash
#设置日志文件存放目录
LOG_HOME="/usr/local/nginx/logs/"
#备分文件名称
LOG_PATH_BAK="$(date -d yesterday +%Y-%m-%d)"
#重命名日志文件
mv ${LOG_HOME}/access.log ${LOG_HOME}/${LOG_PATH_BAK}.access.log
mv ${LOG_HOME}/error.log ${LOG_HOME}/${LOG_PATH_BAK}.error.log
#向nginx主进程发信号重新打开日志
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
安装crontab: yum install vixie-cron
yum install crontabs
查看crontab服务状态:service crond status
手动启动crontab服务:service crond start
开机自启动 :chkconfig --level 35 crond on
然后配置crontab每天凌晨00:00定时执行这个脚本
crontab -e
0 0 * * * bash /usr/local/nginx/nginx_log.sh
然后重启nginx:/usr/local/nginx/sbin/nginx -s reload
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律