千家信息网

Nginx定时切割日志实现详解

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,前言Nginx日志默认情况下写入到一个文件中,为了区分各个域下的日志,我们一般会分开存储。即时这样,文件也会变的越来越大,非常不方便查看分析。通常我们是以每日来做统计的,下面来聊聊以日期来分隔Ngin
千家信息网最后更新 2026年11月02日Nginx定时切割日志实现详解

前言

Nginx日志默认情况下写入到一个文件中,为了区分各个域下的日志,我们一般会分开存储。即时这样,文件也会变的越来越大,非常不方便查看分析。通常我们是以每日来做统计的,下面来聊聊以日期来分隔Nginx日志。

配置

编写脚本

#!/bin/bash#初始化LOGS_PATH=/usr/local/nginx/logsYESTERDAY=$(date -d "yesterday" +%Y%m%d)#按天切割日志mv ${LOGS_PATH}/bbs.52itstyle.com.access.log ${LOGS_PATH}/bbs.52itstyle.com.access_${YESTERDAY}.logmv ${LOGS_PATH}/blog.52itstyle.com.access.log  ${LOGS_PATH}/blog.52itstyle.com.access_${YESTERDAY}.log#向nginx主进程发送USR1信号,重新打开日志文件,否则会继续往mv后的文件写数据的。原因在于:linux系统中,内核是根据文件描述符来找文件的。如果不这样操作导致日志切割失败。kill -USR1 `ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'`#删除7天前的日志cd ${LOGS_PATH}find . -mtime +7 -name "*20[1-9][3-9]*" | xargs rm -fexit 0

写入任务

#执行命令crontab -e#写入文件并保存0 0 * * * /home/scripts/cut_del_nginx_logs.sh

crontab

crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。Linux下的任务调度分为两类,系统任务调度和用户任务调度。

系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件。

crontab服务安装

安装crontab:

yum install crontabs

服务操作说明:

service crond start //启动服务service crond stop //关闭服务service crond restart //重启服务service crond reload //重新载入配置

查看crontab服务状态:

service crond status

手动启动crontab服务:

service crond start

查看crontab服务是否已设置为开机启动,执行命令:

ntsysv

加入开机自动启动:

chkconfig -level 35 crond on

crontab格式说明

用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:

在以上各个字段中,还可以使用以下特殊字符:

  • 星号(*):代表所有可能的值,例如day字段如果是星号,则表示在满足其它字段的制约条件后每天都执行该命令操作。
  • 逗号(,):可以用逗号隔开的值指定一个列表范围,例如,"1,2,5,7,8,9"
  • 中杠(-):可以用整数之间的中杠表示一个整数范围,例如"2-6"表示"2,3,4,5,6"
  • 正斜线(/):可以用正斜线指定时间的间隔频率,例如"0-23/2"表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

任务 文件 服务 日志 字段 系统 调度 命令 进程 代表 斜线 星号 格式 配置 周期 周期性 就是 数据 整数 时间 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 南京欣网互联网络科技有限公司 深圳恒合互联网络科技有限公司 河南真二互联网科技有限公司 互联网与科技发展 礼当家互联网科技 互联网科技媒体 互联网金融 科技创新 深圳卡尔迅互联网科技有限公司怎么样 科技互联网的估值 北京大学互联网科技怎么样 广州慧亚互联网科技怎么样 厦门比较好的科技互联网公司 重庆互联网医院沙龙医盟信息科技 朱啸虎曾投资哪些互联网科技企业 上海科技产业互联网平台 2021互联网科技公司排名 本届互联网大会上的黑科技 宁波跨境商互联网科技有限公司 长沙渺峰互联网科技有限公司 河南商务圈互联网科技有限公司 互联网络科技 腾讯阿里互联网科技 科技制造互联网公司 赫美联合互联网科技 互联网教育科技公司vipkid 千方科技属于互联网企业吗 青岛科技大学互联网大赛研究生 速维有品互联网信息科技(苏州)有限公司 科技类公司包括互联网吗 互联网金融科技名词解释
0