##########################日志切割################################
1、上传脚本到/usr/local/nginx/logs/下
2、并附执行权限
chmod +x cut_nginx_log.sh

3、编写定时任务  每天0点0分 执行cut_nginx_log.sh脚本
crontab -e
0 0 * * *  root /usr/local/nginx/logs/cut_nginx_log.sh
或者
vim /etc/crontab
0 0 * * *  root /usr/local/nginx/logs/cut_nginx_log.sh

4、脚本内容:
cat   cut_nginx_log.sh

#!/bin/bash
#日志存放路径

#LOG_PATH=¥NGINX_WORKDIR/logs
LOGS_PATH=/usr/local/nginx/logs
#获取昨天的时间
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)

month_age=${date -d "-30 days" +%Y-%m%-%d}

if ! cd $LOG_PATH; then

exit 2

fi

#nginx的PID路径
NGINX_PID=/usr/local/nginx/logs/nginx.pid
#把当前的access.log/error.log重命名为access.yesterday.log/error.yesterday.log
mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access.${YESTERDAY}.log
mv ${LOGS_PATH}/error.log ${LOGS_PATH}/error.${YESTERDAY}.log
# 向 Nginx 主进程发送 USR1 信号。USR1 信号是重新打开日志文件
kill -USR1 $(cat ${NGINX_PID})

###########################日志清理#################################

1、上传脚本到/usr/local/nginx/logs/下
2、并附执行权限
chmod +x rm_nginx_logfile.sh

3、编写定时任务  每天0点0分 rm_nginx_logfile.sh脚本
crontab -e
0 0 * * *  root /usr/local/nginx/logs/rm_nginx_logfile.sh
或者
vim /etc/crontab
0 0 * * *  root /usr/local/nginx/logs/rm_nginx_logfile.sh

cat   rm_nginx_logfile.sh

#!/bin/bash
#日志所在路径
LOGS_PATH=/usr/local/nginx/logs
#设置保留时间  单位(天)
SAVE_TIME=30
#执行最终的命令
#查找 修改日志在30天前的同时以log结尾的文件然后删除
#如果没有-name选项过30之后脚本会被删除掉
find ${LOGS_PATH}/ -mtime +${SAVE_TIME} -name \*.log |xargs rm -rf {}
 
---------------------
版权声明:本文为CSDN博主「年轻卜是罪~四哥」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/bj_lsq/article/details/84837399

nginx日志切割和日志清理的更多相关文章

  1. nginx自动切割访问日志

    Web 访问日志 (access_log) 记录了所有外部客户端对Web服务器的访问行为,包含了客户端IP,访问日期,访问的URL资源,服务器返回的HTTP状态码等重要信息. 一条典型的Web访问日志 ...

  2. Nginx 热部署和日志切割,你学会了吗?

    上篇文章,我们已经安装好 Nginx,并且配置好 Nginx 文件后,这个时候我就需要操作 Nginx 的命令行了,这篇文章主要讲解 Nginx 命令行相关知识,并通过日常遇到的热部署.切割日志文件场 ...

  3. Nginx笔记总结十:Nginx日志切割

    1.Nginx日志切割 logrotate日志文件管理工具,通过cron程序定期执行,默认在cron默认程序的dayli目录下 [root@joker logrotate.d]# cat /etc/c ...

  4. tomcat日志切割和定期删除(转载)

    tomcat日志切割和定期删除 在tomcat的软件环境中,如果我们任由日志文件无限增长,总有一天会将磁盘占满的(废话).特别是在日志文件增长速度很快的一些情况下,按日志切割日志文件并删除,就是一件很 ...

  5. tomcat日志切割和定期删除

    tomcat日志切割和定期删除 在tomcat的软件环境中,如果我们任由日志文件无限增长,总有一天会将磁盘占满的(废话).特别是在日志文件增长速度很快的一些情况下,按日志切割日志文件并删除,就是一件很 ...

  6. nginx 日志切割(也适用于docker)

    =============================================== 2019/4/6_第2次修改                       ccb_warlock 201 ...

  7. Nginx访问日志、日志切割、静态文件不记录日志和过期时间

    6月8日任务 12.10 Nginx访问日志12.11 Nginx日志切割12.12 静态文件不记录日志和过期时间 12.10 Nginx访问日志 除了在主配置文件nginx.conf里定义日志格式外 ...

  8. linux shell:nginx日志切割脚本

    需求原因:nginx不具备日志切割功能,日志量较大,方便分析. 实现目的:完成nginx日志切割,并根据时间命名   简要命令: mv /usr/local/tengine/logs/access.l ...

  9. Nginx日志切割,以及脚本上传nginx的切割日志

    一:日志切割步骤 命令都在root下进行 1.创建目录 mkdir -p /etc/opt/modules/bin ## 创建文件夹 2.上传cut 3.观察目录 4.修改的cut文件 5.检测 需要 ...

随机推荐

  1. shell输出文本颜色

    绿地白字 echo -e "\033[42;37m 绿底白字 \033[0m"

  2. 【Code Tools】AB性能测试工具(二)

    一.测试Get请求 1.每次并发请求10个,总共1000个请求 ab -n -c https://www.baidu.com/ 2.指定Header参数 通过-H来指定 ab -n -c -H 'Ac ...

  3. DT图库列表修改内容标题字数

    dt限制标题字数的方法有几种,最简单的是一种是: {dsubstr($t[title], 42, '..')} 还有一种是列表输出,也是网上常用的方法 <!--{tag("module ...

  4. vscode——常用插件记录

    前言 本人vscode中使用的插件列表,记录下. 列表 Auto Rename Tag 自动重命名成对的超文本标记语言/可扩展标记语言 background-cover 为vscode设置背景图片 C ...

  5. npm run build打包时修改的路径

  6. Java中String、LocalDateTime、LocalDate、Date互转

    String 转LocalDate和LocalDateTime LocalDate startDate = LocalDate.parse("2019-12-05", DateTi ...

  7. php+tcpdf生成pdf: 中文乱码

    TCPDF是一个生成PDF的不错的库,可惜,官方对包括中文在内的东亚字体支持不怎么样的.场景:某项目需要根据数据库信息生成pdf格式的发票,考虑采用稳定的tcpdf,虽然还有许多其它选择,但是这个应该 ...

  8. LeetCode 983. Minimum Cost For Tickets

    原题链接在这里:https://leetcode.com/problems/minimum-cost-for-tickets/ 题目: In a country popular for train t ...

  9. 洛谷 P2571 [SCOI2010]传送带 题解

    每日一题 day51 打卡 Analysis 这道题是用非常恶心的三分套三分做的,有一个技巧是不要枚举坐标,枚举两条线段构成三角形的相似比就好了. 了解思路就还挺好写的(尽管我还调了三天) #incl ...

  10. 【转载】Visual Studio Code 构建 C/C++ 开发环境

    https://www.cnblogs.com/XieSir/articles/8288051.html 1. 安装 MinGW Distro / MinGW / GNU GCC 中的任何一款,( W ...