nginx实现日志分割及备份

1、为什么要进行日志分割?

nginx默认将日志信息写在一个文件中,时间一久日志文件中条目越来越多,文件越来越大,不方便查看,备份的时候也不需要备份重复的信息,故需分割日志,将日志按小时,天,周…分割,写到不同的日志文件中。

2、日志分割的原理

通过linux自定义脚本,完成日志的分割和备份,使用定时任务,实现自动备份。

2、日志分割如何操作?

(1)对nginx服务器上面的日志进行日志切割(手动方式)
第一步:查看nginx服务器的日志都有哪些类型

日志名称日志类型
access.log存放成功访问nginx服务器的日志信息
error.log存放访问nginx服务器失败的日志信息
nginx.pid严格来说这个不算日志,里面存放的是nginx进程的pid

在这里插入图片描述
在这里插入图片描述
只有这个服务开启时,该文件才存在:
在这里插入图片描述
第二步:查看当前时刻nginx服务器日志的大小,进行压力测试,增大访问日志文件

在这里插入图片描述
里面的内容太少了,因为我的nginx服务器是实验才搭建起来的,只测试过几次,因此内容少,实际企业当中日志的信息量是非常大的。

[root@server2 httpd]# ab -c 1000 -n 1000 http://192.168.13.134:8080/index.html     //-c表示访问并发量,-n表示访问次数

关于压力测试命令ab使用方法,可以点击这里
在这里插入图片描述
####查看日志文件大小:

[root@server2 logs]# du -sh access.log 
320K	access.log

在这里插入图片描述

第三步:进行手动日志切割

[root@server2 logs]# mv access.log `date +%F -d -1day`_access.log
mv: overwrite ‘2020-10-29_access.log’? y
[root@server2 logs]# ls
2020-10-29_access.log   error.log  nginx.pid
[root@server2 logs]# /usr/local/nginx/sbin/nginx -s reopen   //重新生成一个日志文件来存放今天的日志
[root@server2 logs]# ls
2020-10-29_access.log  access.log  error.log  nginx.pid
[root@server2 logs]# cat access.log 
[root@server2 logs]# ab -c 1000 -n 1000 http://192.168.13.134:8080/index.html

时间节点是9:59分钟,所有日志分割进了自定义 的时间日志文件
在这里插入图片描述
时间节点为10:00,所有的日志放进了access.log日志文件中
在这里插入图片描述
(2)对nginx服务器上面的日志进行日志切割(脚本方式)
第一步:在nginx服务的日志目录下面编写脚本,给权限

在这里插入图片描述
第二步:建立目录
在这里插入图片描述
执行脚本,查看日志是否自动切割备份
在这里插入图片描述
编写定时任务,使实际企业当中的服务器每天晚上的24:00准时去进行日志切割
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值