千家信息网

Nginx服务优化(四)日志分割

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,Nginx的日志切割随着Nginx运行时间增加,日志也会增加。为了方便掌握Nginx运行状态,需要时刻关注Nginx日志文件,太大的日志文件对监控是一个大灾难,所以需要定期进行日志文件的切割。Ngin
千家信息网最后更新 2025年01月24日Nginx服务优化(四)日志分割

Nginx的日志切割

随着Nginx运行时间增加,日志也会增加。为了方便掌握Nginx运行状态,需要时刻关注Nginx日志文件,太大的日志文件对监控是一个大灾难,所以需要定期进行日志文件的切割。
Nginx自身不具备日志分割处理的功能,但可以通过Nginx信号控制功能的脚本实现日志的自动切割,并通过Linux的计划任务周期性地进行日志切割。

1.在"/usr/local/nginx"目录下,添加一个日志分割脚本

[root@localhost nginx]# vim fenge.sh    //脚本#!/bin/bash#Filename:fenge.shd=$(date -d "-1 day" "+%Y%m%d")logs_path="/var/log/nginx"pid_path="/usr/local/nginx/logs/nginx.pid"[ -d $logs_path ] || mkdir -p $logs_pathmv /usr/local/nginx/logs/access.log ${logs_path}/test.com-access.log-$dkill -USR1 $(cat $pid_path)find $logs_path -mtime +30 | xargs rm -rf[root@localhost nginx]# chmod +x fenge.sh    //添加执行权限[root@localhost nginx]# lsclient_body_temp  conf  fastcgi_temp  fenge.sh  html  logs  proxy_temp  sbin  scgi_temp  uwsgi_temp[root@localhost nginx]# 

2.执行脚本

[root@localhost nginx]# ls /var/log/nginx   //执行前没有该目录ls: 无法访问/var/log/nginx: 没有那个文件或目录[root@localhost nginx]# ./fenge.sh    //执行脚本[root@localhost nginx]# ls /var/log/nginx   //目录创建成功,并生成日志文件test.com-access.log-20191112[root@localhost nginx]#
0