zoukankan      html  css  js  c++  java
  • nginx 日志相关配置总结

    设置位于nginx.conf:
            log_format  main  '$server_name $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for" $upstream_addr $request_time $upstream_response_time';
            access_log /logs/nginx/access.log main;
            error_log /logs/nginx/error.log;
    设置可以放在http{}中也可以放在server{}中,后者会针对每个server做不同配置. 
    其中最应该关注的除了status,还有request_time 和upstream_response_time有一些细微的差别
    request_time官网描述:request processing time in seconds with a milliseconds resolution; time elapsed between the first bytes were read from the client and the log write after the last bytes were sent to the client 。
    指的就是从接受用户请求的第一个字节到发送完响应数据的时间,即包括接收请求数据时间、程序响应时间、输出
    而真正程序的响应时间应该用$upstream_response_time。
     
     

     
    日志自动切分:利用logrotate,首先安装Logrotate,
    然后在/etc/logrotate.d 中加入一个文件(注意如果是nginx通过apt-get安装的话该步骤是自动的,所有通过apt-get安装的程序日志都会自动生成logrotate 配置)
     
    配置类似于
    logs/nginx/*.log {
            daily
            missingok
            rotate 52
            compress
            delaycompress
            notifempty
            create 0640 www-data adm
            sharedscripts
            prerotate
                    if [ -d /etc/logrotate.d/httpd-prerotate ]; then 
                            run-parts /etc/logrotate.d/httpd-prerotate; 
                    fi; 
            endscript
            postrotate
                    [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`
            endscript
    }
     
    该配置会按照天来切分.当然最好还要用
    /usr/bin/find /logs/nginx -mtime +3 -name "*.log.*" -exec /bin/rm -r {} ;
    配置到crontab中定期执行来清理多余的切分文件,否则容易磁盘溢出. 
     
  • 相关阅读:
    在jsp页面如果运行时路径错误解决方法
    Maven实现ssm框架整合
    JS进阶(二)this指南——绑定了谁?
    防御性编程方法收集
    react将多个公共组件归成一类,方便调用
    初始化构建React+Ts项目时出现:Module build failed (from ./node_modules/css-loader/dist/cjs.js): CssSyntaxError
    Dva三种方式实现dispatch的Promise回调
    ES6多层解构
    ES6解构过程添加一个默认值和赋值一个新的值
    Antd-Pro2.0版本如何修改代理,让Mock变为真实服务器接口
  • 原文地址:https://www.cnblogs.com/violinn/p/4940618.html
Copyright © 2011-2022 走看看