zoukankan      html  css  js  c++  java
  • 日志文件配置与切割

    日志文件配置与切割

    自定义日志格式

    http

    {

        server

        {

            listen          80 default;

            server_name     _*;

            access_log      logs/default.access.log combined;

            location / {

                index index.html;

                root  /data0/htdocs/htdocs;

            }

        }

    }

    其中的  access_log,就是用来配置日志路径的,

    log_format 指令用于设置日志格式

    如果不需要记录日志

    access_log off;

    combined是默认日志格式,一般不需要指定

    如果需要使用 log_format 自定义的日志格式,如下

    log_format myLogFormat 定义日志格式

    access_log 路径 myLogFormat buffer=32k,其中buffer用来设置缓存

    日志文件的切割

    mv log log2015-01-01

    kill -USR1 Nginx主进程号,让Nginx重新生成一个日志文件

    这里是手动对日志进行的切割,如果想要定时对日志进行切割,需要写一个shell脚本

    思路:写一个shell脚本,然后用crontab设置调用shell脚本的时间

    vi /usr/local/nginx/sbin/cut_nginx_log.sh

    输入

    #!/bin/bash

    # This script run at 00:00

    # The Nginx logs path

    logs_path="/usr/local/nginx/logs/"

    mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/

    mv ${logs_path}access.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/access_$(date -d "yesterday" +"%Y%m%d").log

    kill -USR1 `cat /usr/local/nginx/nginx.pid`

    crontab -e

    输入  

    00 00 * * * /bin/bash  /usr/local/webserver/nginx/sbin/cut_nginx_log.sh

    每天凌晨0点切割日志

  • 相关阅读:
    java线程间的协作
    java线程间的共享
    java多线程基础API
    java并发编程基础概念
    如何设计一套规则引擎系统
    Stream—一个早产的婴儿
    Java函数式编程的前生今世
    关于微服务划分的一些思考
    如何更优雅的给控制器 “减负”
    PHP简洁之道
  • 原文地址:https://www.cnblogs.com/sherrykid/p/5831560.html
Copyright © 2011-2022 走看看