使用logrotate配置日志切割
日志切割的方式有很多种,以下为使用logrotate配置nginx的日志切割
1、配置切割nginx的日志文件 vi /etc/logrotate.d/nginx
/var/log/nginx/*.log { create 0640 nginx root #表示在轮换期间新创建的文件权限和所属用户 daily #表示按天的单位进行轮替 rotate 10 #表示保留旧文件的数量 size 2G #表示日志文件大小达到2G触发轮替 missingok #如果日志文件不存在,则忽略,不报错 notifempty #如果日志为空,不轮转日志 compress #轮转后的日志文件进行压缩 sharedscripts #在每个日志文件轮转时只执行一次脚本 dateext #轮转后的日志文件后面添加日期作为扩展名 dateformat .%Y-%m-%d-%H #设置轮转时附加的日期格式 extension .%Y-%m-%d-%H%M #置轮转后的日志文件扩展名的格式 postrotate #部分包裹的命令将在轮转后执行,这里的命令主要是向 Nginx 服务器发送 USR1 信号,
以触发 Nginx 重新打开日志文件,实现日志切割 /bin/kill -USR1 `cat /run/nginx.pid 2>/dev/null` 2>/dev/null || true endscript }
2、使用定时任务去触发,这里设置的是每小时执行一次 vi /etc/cron.hourly/logrotate
#!/bin/bash
/usr/sbin/logrotate /etc/logrotate.conf
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具