首页 > 系统相关 >使用定时任务+脚本方式对nginx进行日志切分

使用定时任务+脚本方式对nginx进行日志切分

时间:2023-06-05 15:22:06浏览次数:39  
标签:log 切分 nf nginx PATH home 日志 LOGS

使用定时任务+脚本方式对nginx进行日志切分

nginx路径:/home/nf/nginx

nginx日志路径:/home/nf/nginx/logs

切分目标文件:access.log error.log

创建脚本:

 1 vim /home/nf/cut_nginx_log.sh 

 1 #!/bin/bash
 2 #nginx log path
 3 LOGS_PATH=/home/nf/nginx/logs
 4 YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
 5 KEEPTIME=$(date -d "-30 days" +%Y-%m-%d)
 6 #cut logs
 7 mv ${LOGS_PATH}/access.log ${LOGS_PATH}/date/access_${YESTERDAY}.log
 8 mv ${LOGS_PATH}/error.log ${LOGS_PATH}/date/error_${YESTERDAY}.log
 9 
10 kill -USR1 $(cat /home/nf/nginx/logs/nginx.pid)
11 
12 #remove 30 days before logs
13 rm -f ${LOGS_PATH}/date/access_{KEEPTIME}.log
14 rm -f ${LOGS_PATH}/date/error_{KEEPTIME}.log

(脚本中使用KEEPTIME变量,取得30天之前的日期,做删除用;

USR1用作通知应用重载配置文件;)

在nginx的log中新建文件夹

 1 mkdir /home/nf/nginx/logs/date 

创建crontab定时任务

 1 crontab -e 

 1 0 0 * * * sh /home/nf/cut_nginx_log.sh 

(使定时任务每天0点执行,将前一天的access.log和error.log文件改为带昨日日期时间戳的log文件,然后重载配置文件,生成新的access.log,error.log存储新一天的记录)

 1 crontab -l 

标签:log,切分,nf,nginx,PATH,home,日志,LOGS
From: https://www.cnblogs.com/danielmiau/p/17457872.html

相关文章

  • nginx配置图片服务器
    startnginx           //运行nginx nginx-sstop     //停止nginxnginx-sreload   //重新加载配置文件(如修改配置文件后,可通过该命令重新加载)nginx-squit     //退出nginxnginx-v        //......
  • 一个基于C++11的异步安全日志库
    0源码获取gitee1概述这是一个基于c++11的异步日志库目前仅支持windows已通过VS2019+windows11测试。支持自动清理距今指定天数的日志支持设定日志文件输出路径2待实现支持linux3一个范例使用范例 std::unique_ptr<oct_tk::AsyncLogging>async_log=s......
  • 使用 Nginx Upload Module 实现上传文件功能
    普通网站在实现文件上传功能的时候,一般是使用Python,Java等后端程序实现,比较麻烦。Nginx有一个Upload模块,可以非常简单的实现文件上传功能。此模块的原理是先把用户上传的文件保存到临时文件,然后在交由后台页面处理,并且把文件的原名,上传后的名称,文件类型,文件大小set到页面。下面和大......
  • nginx开启更为安全的tls1.3
    随着互联网安全越来越受到重视,越来越多的网站选择启用https来保证数据的加密传输,TLS1.2发布于2008年8月,至今正好有10年,所以新协议TLS1.3呼之欲出。Googlechrome在最近的版本更新中也开始逐步对TLS1.3进行支持,TLS1.3对于TLS1.2有重大改写,提高了安全性并且提高了速度,所以升级还是很......
  • 从日志记一次Spring事务完整流程
    spring事务一次完整流程,创建》确认获取连接》完成》提交》释放链接DataSourceTransactionManager//Step1.进入业务方法前,依据事物切面创建事务对象2019-07-0622:34:24,819[main]DEBUGo.s.j.d.DataSourceTransactionManager-Creatingnewtransactionwithname[com......
  • 搭建Hibernate日志-log4jdbc
    官方:[url]https://code.google.com/p/log4jdbc/[/url]log4jdbc分析sql性能[url]http://hongliangpan.iteye.com/blog/1088398[/url]xml配置方法:log4jdbc日志框架介绍[url]http://blog.sina.com.cn/s/blog_57769b7b0101m1il.html[/url][url]http://xia......
  • MySQL 8错误日志出现"The table /home/work/mysql_3306/tmp/#sqla2b_298b06_4d is fu
    ##############    了解MySQL8.0.26的错误日志出现"Thetable /home/work/mysql_3306/tmp/#sqla2b_298b06_4disfu11!"的bug,暂时通过修改临时表的存储引擎为内存引擎解决  MySQL8.0.13开始引入新的临时内存表引擎TempTable,并将其作为内存中创建临时表的默认存储引擎。T......
  • 【Python】如何在FastAPI中使用UUID标记日志,以跟踪一个请求的完整生命周期
    为什么要使用uuid标记日志?在分布式系统中,一个请求可能会经过多个服务,每个服务都会生成自己的日志。如果我们只使用普通的日志记录,那么很难将这些日志串联在一起,以至难以跟踪一个请求的完整生命周期。如果能够使用uuid标记日志,为每个请求生成一个唯一的uuid,且这个日志可以在不同......
  • 安装 Nginx 修改默认端口
    用远程工具连接我们上次购买的机器,这里我要介绍一个知识点,博主使用的工具是MobaXterm,这个工具有一个多操作的功能,在下图的位置可以开启多操作,然后连接你的服务器机子即可:首先我们将机子里面的依赖源都更新一下,在去安装Nginx,在控制台输入如下命令进行更新:apt-getupdate安装Nginx......
  • winows 下iis+nginx +php 部署
    我们服务器使用的server2008,由于iis里还有asp.net网站,php就想用iis做代理转发到nginx来处理请求。第一步:我为了省事,直接安装的phpstudy 下载地址:https://www.xp.cn/第二步:安装好后,设置运行fast-cgi,可以使用以下命令做bat,指定端口运行fast-cgi,我指定端口为9003ECHOSt......