• nginx日志


    相关知识可参考文章:nginx日志格式及自定义日志配置 

    1.查看nginx的log配置

    1)vim /etc/nginx/nginx.conf

    打开为

    user nginx;
    worker_processes 1;

    error_log /var/log/nginx/error.log warn;   //记录nginx错误日志的路径, WARN代表错误日志的级别
    pid /var/run/nginx.pid;


    events {
    worker_connections 1024;
    }


    http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;

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

    access_log /var/log/nginx/access.log main;     //  main代表nginx的log_format的name

    sendfile on;
    #tcp_nopush on;

    keepalive_timeout 65;

    #gzip on;

    include /etc/nginx/conf.d/*.conf;
    }

    针对其中log_format 

     1.$remote_addr 与$http_x_forwarded_for 用以记录客户端的ip地址;
     2.$remote_user :用来记录客户端用户名称;
     3.$time_local : 用来记录访问时间与时区;
     4.$request : 用来记录请求的url与http协议;
     5.$status : 用来记录请求状态;成功是200,
     6.$body_bytes_s ent :记录发送给客户端文件主体内容大小;
     7.$http_referer :用来记录从那个页面链接访问过来的;
     8.$http_user_agent :记录客户端浏览器的相关信息;

    2).将 1)中的 error.log打印出来的标准格式

     tail -f /var/log/nginx/error.log

    2017/10/11 14:01:36 [error] 1337#1337: *1 open() "/usr/share/nginx/html/favicon.ico" failed (2: No such file or directory), client: 192.168.2.113, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "192.168.2.157", referrer: "http://192.168.2.157/"
    2017/10/11 14:16:05 [error] 1337#1337: *3 open() "/usr/share/nginx/html/1111" failed (2: No such file or directory), client: 192.168.2.113, server: localhost, request: "GET /1111 HTTP/1.1", host: "192.168.2.157"
    2017/10/11 14:16:26 [error] 1392#1392: *1 open() "/usr/share/nginx/html/1111" failed (2: No such file or directory), client: 192.168.2.113, server: localhost, request: "GET /1111 HTTP/1.1", host: "192.168.2.157"

    2.nginx变量

    1)http请求变量

    arg_PARAMETER、http_HEADER、sent_http_HEADER(服务端返回给客户端reponse的head)

    例子:

    vim /etc/nginx/nginx.conf

    修改配置文件

    user nginx;
    worker_processes 1;

    error_log /var/log/nginx/error.log warn;   //记录nginx错误日志的路径, WARN代表错误日志的级别
    pid /var/run/nginx.pid;


    events {
    worker_connections 1024;
    }


    http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;

    log_format main '$http_user_agent' '$remote_addr - $remote_user [$time_local] "$request" '   //原始是http-User-Agent   但是这里需要小写,并且将-替换成_
    '$status $body_bytes_sent "$http_referer" '
    '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log main;     //  main代表nginx的log_format的name

    sendfile on;
    #tcp_nopush on;

    keepalive_timeout 65;

    #gzip on;

    include /etc/nginx/conf.d/*.conf;
    }

    保存后

    nginx -t -c /etc/nginx/nginx.conf   //  -t表示检查配置文件的格式正确与否,-c 标识配置文件的路径的检查

    如果成功后

    nginx -s reload -c /etc/nginx/nginx.conf  //重新加载配置

    请求几次本机

    curl http://127.0.0.1

    tail -n 200  /var/log/nginx/access.log

    发现日志最前面出现的相应的信息

    2)内置变量

    nginx内置的

    访问http://nginx.org/en/docs/

    点击Logging to syslog

    http://nginx.org/en/docs/http/ngx_http_log_module.html#access_log 

    点击红框可以查看所有的内置变量

    3)自定义变量

    自己定义

  • 相关阅读:
    开发中,android手机WIFI无法使用,无SIM卡故障解决
    2017-2018-1 20179226《Linux内核原理与分析》第五周作业
    2017-2018-1 20179226《Linux内核原理与分析》第四周作业
    2017-2018-1 20179226《Linux内核原理与分析》第三周作业
    2017-2018-1 20179226《Linux内核原理与分析》第二周作业
    20179226《Linux内核原理与分析》第一周读书笔记
    python全栈开发_day31_TCP,UPD和粘包问题
    python全栈开发_day29_元类(下)
    python全栈开发_day28_元类(上)
    python全栈_day27_选课系统项目编写
  • 原文地址:https://www.cnblogs.com/knyel/p/7650907.html
Copyright © 2020-2023  润新知