zoukankan      html  css  js  c++  java
  • nginx日志定时备份

    1、nginx服务必须起着,服务启动了才会有nginx.pid

    2、nginx日志目录下的简介

    •  nginx的产生的相关的日志默认是在/usr/local/nginx/logs的目录里面

    注意:日志的开关在Nginx的配置文件nginx.conf文件中设置,产生的日志都是可以选择性关闭的,但是默认是打开的。

    • access.log:该日志文件是用来记录客户在访问该nginx时产生的每一个请求,格式可以自定义,通过访问日志就可以得到用户地域来源跳转来源,使用终端,某个URL访问等相关信息。

    • error.og:错误日志,主要是记录客户端访问Nginx错误时产生的日志,格式不支持自定义,通过错误日志。可以得到系统的某个服务或者server的性能瓶颈。因此将错误日志好好利用,可以得到很多有价值的信息。

    • nginx.pid:该日志文件主要是用来记录nginx的master进程的pid,当nginx服务启动时,会自动在该目录下生成该进程的pid文件。

    3、日志及其日志备份

    1.日志的自动生成

    • 默认的在每次启动nginx服务的时候,都会在/usr/local/nginx/los目录下生成access.log日志,但是在每次对服务reopen重新打开时也会在nginx重新生成access.log日志文件。

    验证如下:

     此时我已经编辑了backup.sh、生成了oldlogs,这两步在下面的操作

     

    2.实现在每日的凌晨自动备份nginx产生的日志

    编写脚本实现nginx日志的自动备份:

    vim backup.sh编辑内容如下:

    #!/bin/bash

    LOG_PATH=/usr/local/nginx/logs/oldlogs

    CUR_LOG_PATH=/usr/local/nginx/logs

    YESTERDAY=$(date +%F -d -1day)

    mv $CUR_LOG_PATH/access.log $LOG_PATH/${YESTERDAY}_access.log

    mv $CUR_LOG_PATH/error.log $LOG_PATH/${YESTERDAY}_error.log

    kill -USR1 $( cat /usr/local/nginx/logs/nginx.pid)

     

     

     添加定时命令文件实现每天凌晨的nginx服务的自动备份

     如果在执行crontab -e后编辑内容如下:

    编辑完成之后保存退出报错    no crontab for root - using an empty one

    解决办法可以是crontab -e编辑后强制保存退出就可以了

    4、每天检查/usr/local/nginx/logs/oldlogs是否自动备份每日日志

     

  • 相关阅读:
    RestTemplate与Gzip压缩
    在浏览器中异步下载文件监听下载进度
    springBoot中的所有配置属性(中文)
    Springboot应用中设置Cookie的SameSite属性
    客户端解析服务器响应的multipart/form-data数据
    springboot + querydsl 入门到会用
    MyBatis通过TypeHandler自动编解码对象的Json属性
    @Transaction注解失效的几种场景
    Elasticsearch 7.x配置用户名密码访问 开启x-pack验证
    搭建Elasticsearch可视化界面 Kibana
  • 原文地址:https://www.cnblogs.com/mihoutao/p/13878987.html
Copyright © 2011-2022 走看看