• nginx日志格式配置


    我一向对日志这个东西有些许恐惧,因为在分析日志是需要记住不同服务器日志的格式,就拿提取ip这一项来说,有的服务器日志是在第一列,有的是第二列或则第三列等等。知道今天我才发现,日志格式是可以自定义配置的。。。。
    现在我们来看一下nginx的日志格式如何自定义配置
    log_format指令用来设置日志格式,其语法如下:
    log_format name format [format …]

    nginx默认日志格式具体参数如下:

    log_format combined '$remote_addr - $remote_user [$time_local]'
    '"$request" $status $body_bytes_sent '
    '"$http_referer" "$http_user_agent"';

    看一下一条nginx日志

    192.168.3.113 - - [23/Jul/2017:01:17:43 -0700] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0"
    

    可以看到分别对应的是ip 远程用户名 时间 请求 请求状态 以及用户客户端信息等等

    那么日志配置是在哪里进行配置的呢

    [root@localhost nginx]# !446
    cat conf/nginx.conf|grep -v "#"|grep -v "^$"
    worker_processes  1;
    events {
        worker_connections  1024;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
        log_format mylog '$remote_addr [$time_local]' '"$http_user_agent"';          #在这里进行配置,命名为mylog,也可以把这条语句放在server里面
        sendfile        on;
        keepalive_timeout  65;
        server {
            listen       80;
            server_name  www.bp1.com;
            location / {
                root   html;
                index  index.html index.htm index.php;
            }
            error_page  404              /404.html;
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
            location ~ .php$ {
                root           html;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }
        }
        server{
            listen 192.168.3.123:80;
            server_name www.bp3.com;
            access_log logs/bp2.access.log mylog;     #使用刚配置的日志文件格式mylog
            location /
            {
                index index.html index.php;
                root html/bp2;
            }
            location ~ .php$ {
                root           html/bp2;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }
    
        }
        server{
            listen 192.168.3.125:80;
            server_name www.bp2.com;
            location /{
                root html/bp3;
                index index.html index.php;
            }
            location ~ .php$ {
                root           html/bp3;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }
        }
    }
    [root@localhost nginx]# 
    

    效果

    192.168.3.113 [23/Jul/2017:01:37:51 -0700]"Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0"
  • 相关阅读:
    普通父类和抽象父类
    properties文件的读取和写入
    HTTPS接口获取数据报错的问题
    SpringMVC中bean之间的相互应用(循环引用)
    JAVA代码进行排序以及模糊查询
    从TXT读取文本和将数据写入TXT文本的两种方式
    EXCEL最简洁导出(不带样式设置)
    5种线程池的创建方法和作用
    html5是什么
    J2EE,JSP,Java的区别
  • 原文地址:https://www.cnblogs.com/biaopei/p/7730515.html
Copyright © 2020-2023  润新知