Nginx--日志切割

日志切割

就是把系统的日志以天为单位进行存放,即每一天的日志都分开放

企业当中每天都要备份昨天的日志,然后生成一个新的日志记录今天的

如果不做日志切割,当日志文件很大的时候,vim打开的时候可能出现卡死等问题

而且排错也简单

环境搭建

安装 Nginx

路径 /usr/local/nginx

操作流程

服务端

ip:192.168.1.1/24

host:server

cd /usr/local/nginx/logs

access.log

存放访问nginx服务器成功的日志信息

error.log

存放访问nginx服务器失败的日志信息

nginx.pid

严格来说这个不算日志,里面存放的是nginx进程的pid

du -sh access.log

查看日志大小

测试端

ip:192.168.1.100

host:client

添加域名解析

ab -c 10 -n 5000 curl http://192.168.1.100/index.html

完成 10 并发 ,5000 次访问 server

服务端

du -sh access.log

文件变大

mv access.log date +%F -d -1day_access.log

备份

/usr/local/nginx/sbin/nginx -s reopen

重新生成新的日志

du -sh access.log

文件大小还原到初始值

测试端

ab -c 10 -n 5000 curl http://192.168.1.100/index.html

再次完成 10 并发 ,5000 次访问 server

服务端

du -sh access.log

文件大小发生改变

自动化日志切割

在生产环境中每一天的日志文件都是要打包备份的

如果每天都手动的去截取日志,重命名这样就很不方便,所以我们编写一个脚本并建立一个定时任务来进行这些工作

日志切割是自动执行的,写在crotab定时任务里面,写一个脚本实现

操作流程

cd /usr/local/nginx/logs

在nginx服务的日志目录下编写脚本

vim backup.sh

在这里插入图片描述

chmod +x backup.sh

添加执行权限

mkdir oldlogs

创建备份日志存放路径

./backup.sh

执行脚本,查看日志是否自动切割备份

cd oldlogs

ll

可以查看到生成日志备份文件

crontab -e

0 0 * * *

编写定时任务,实际企业当中的服务器每天晚上的00:00准时进行日志切割

crontab -l

查看定时任务

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章