zoukankan      html  css  js  c++  java
  • nginx,php日志分割

      作者:zhanhailiang 日期:2014-01-06

    默认nginx只会生成一个access.log和一个error.log,并且每天不断积累,日志文件会变的非常大,如果需要做一下日志的分析,无论是使用脚本分析,还是把日志下载本地分析,都不太方便。对php日志同样有如此需求。


    所以每天分割访问日志和错误日志等,有利于分析日志。

    #!/bin/sh
     
    # 每天定时分割 可选择相应版本低峰期运行
     
    ngPid='/usr/local/nginx/logs/nginx.pid'
    phpFpmPid='/usr/local/php/var/run/php-fpm.pid'
     
    ngLogs='/usr/local/nginx/logs' # access.log error.log
    phpLogs='/usr/local/php/log'  # errors.log slow.log
    saveLog='/home/service/logs'
     
    top=$saveLog/$(date +%Y)/$(date +%m)
    mkdir -p $top/nginx
    if [ -f $ngLogs/access.log ]; then
        mv $ngLogs/access.log $top/nginx/access.$(date +%Y%m%d).log
    fi
     
    if [ -f $ngLogs/error.log ]; then
        mv $ngLogs/error.log $top/nginx/error.$(date +%Y%m%d).log
    fi
     
    echo `cat $ngPid`
    kill -USR1 `cat $ngPid` # 重读日志文件 Reopen the log files
     
    mkdir -p $top/php
    if [ -f $phpLogs/errors.log ]; then
        mv $phpLogs/errors.log $top/php/errors.$(date +%Y%m%d).log
    fi
     
    if [ -f $phpLogs/php-fpm.log ]; then
        mv $phpLogs/php-fpm.log $top/php/php-fpm.$(date +%Y%m%d).log
    fi
     
    echo `cat $phpFpmPid`
    kill -USR1 `cat $phpFpmPid` # 重启php日志 Reopen the log files
     
    chmod -R 777 $top
  • 相关阅读:
    GET POST区别
    http1.0 1.1 2.0区别
    分布式系统理论之Quorum机制
    MySQL解析过程、执行过程
    redis常见问题和解决方案
    Windows下安装Linux虚拟机的用途和好处
    ping,telnet,ssh命令的理解
    强化学习入门 第五讲 值函数逼近
    强化学习入门第四讲 时间差分方法
    强化学习基础 第三讲 蒙特卡罗方法
  • 原文地址:https://www.cnblogs.com/riasky/p/3509106.html
Copyright © 2011-2022 走看看