12. 日志切割
2. nginx日志切割¶
日志切割是生产环境很常见的操作
能够控制单个日志文件的大小,便于对日志进行管理
1. 模拟生成大量日志¶
ab -kc 10 -n 1000 http://127.0.0.1
2. 给当前日志文件重命名¶
mv access.log access.log_$(date +%Y-%m-%d)
3. 发送信号给nginx,让其生成新的日志文件¶
nginx -s reopen # 等同于kill -USR1 `cat nginx.pid`
4. 编写日志切割shell脚本¶
# 生产环境,日志切割主要以定时任务来操作
vim cut-nginx-log.sh
#!/bin/bash
# 脚本放入crontab,每天00:00执行
logs_path="/opt/tngx232/logs/"
# 创建存放日志的目录
mkdir -p $(logs_path)$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
# 备份当前日志
mv $(logs_path)access.log $(logs_path)$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/$(date -d "yesterday" +"%Y-%m-%d").log
# 重新生成日志
nginx -s reopen
5.脚本放入定时任务执行¶
# 放入定时任务
crontab -e
0 0 * * * /bin/bash /myscripts/cut-nginx-log.sh
最后更新:
2022-02-20 13:32:53