Nginx日志分割

作者: pijh | 来源:发表于2018-05-29 15:18 被阅读8次

对于访问量大的站点,每天会产生大量的日志文件,为了方便我们排错和查看相关日志,对日志进行分割显得相当必要,下面是Nginx日志按日期进行分割的示例:

创建 bash 脚本

$ mkdir -p /data/bash_script
$ touch /data/bash_script/auto_split_nginx_access_log_by_daliy.sh
$ chmod a+x !$ # 添加执行权限

自动分割逻辑

#! /bin/bash

LOGNAME=XXX.dev.meoin.cn #域名,或日志名称
BASEPATH=/data/nginx_logs/$(date -d today +%Y%m%d)
if [ ! -d $BASEPATH ];then
  mkdir -p $BASEPATH
fi
LOGPATH=/var/log/nginx/$LOGNAME.access.log
BACKPATH=$BASEPATH/$LOGNAME.$(date -d today +%Y%m%d%H%M).access.log

mv $LOGPATH $BACKPATH
touch $LOGPATH
kill -USR1 `cat /var/run/nginx/nginx.pid`

开启定时任务

$ crontab -e #root用户登录,其它用户请确保有权限执行
$ */1 * * * * sh /data/bash_script/auto_split_nginx_access_log_by_daliy.sh #为了测试,每分钟执行一次

查看结果

$ ll /data/nginx_logs/20180529
total 488
-rw-r--r-- 1 nginx root   2052 May 29 14:57 xxx.dev.meoin.cn.201805291458.access.log
-rw-r--r-- 1 nginx root   2086 May 29 14:58 xxx.dev.meoin.cn.201805291459.access.log
-rw-r--r-- 1 nginx root    957 May 29 14:59 xxx.dev.meoin.cn.201805291500.access.log
...

相关文章

  • NGINX日志切割

    NGINX日志切割 @(nginx笔记)[nginx] 非常简单的分割NGINX的日志文件,方便查阅。流程1.将当...

  • logrotate命令

    说明 logrotate命令是一个日志分割命令 用法 这里以 nginx日志为例 开启日志功能 配置日志分割规则 ...

  • nginx日志分析

    1,日志定义 在nginx.conf中定义的日志格式如下: 日志文件如下: 2,日志分割 nginx没有命令直接将...

  • 日志分割

    nginx日志放在 /var/log/nginx 下配置/etc/logrotate.d/nginx 测试分割/u...

  • Nginx运行日志自动切割

    所谓自动分割Nginx日志文件,就是指Rotate Nginx log files,即让Nginx每天(或每个星期...

  • Nginx(二)Nginx使用

    日志配置和切割编写自动分割Nginx日志脚本: nginxLogRotate.sh#!/bin/bashLOGS_...

  • Nginx日志分割

    对于访问量大的站点,每天会产生大量的日志文件,为了方便我们排错和查看相关日志,对日志进行分割显得相当必要,下面是N...

  • 分割Nginx日志

    Nginx 是一个非常轻量的 Web 服务器,体积小、性能高、速度快等诸多优点。但不足的是也存在缺点,比如其产生的...

  • nginx 按日期分割access.log日志

    nginx 按日期分割access.log日志 参考url:http://www.yetyun.com/home/...

  • nginx日志分割脚本

    分割多个日志 定时执行

网友评论

    本文标题:Nginx日志分割

    本文链接:https://www.haomeiwen.com/subject/fchajftx.html