(005)Nginx之日志log_format

  1、日志路径

  Nginx日志包括error_log和access_log,在/etc/nginx/nginx.conf中有配置。

  error_log:主要记录nginx处理http请求的错误状态,以及nginx本身服务运行的错误状态。

  access_log:记录nginx每一次http请求的访问状态,主要用于分析每一次访问的请求和客户端的交互行为。

  2、配置语法

  Nginx的日志格式由log_format定义,语法如下:
  Syntax:log_format name [escape=default|json] String...;
  Default:log_format combined "...";
  Context:http

  (005)Nginx之日志log_format

  3、Nginx变量

  HTTP请求变量:arg_PARAMETER、http_HEADER(request的)、sent_http_HEADER(response的)

  内置变量:Nginx内置的

  自定义变量:自己定义

  (1)演示一下添加HTTP请求变量:User-Agent

  (005)Nginx之日志log_format

  需要把 User-Agent 改为 user_agent 前添加$http_

  (005)Nginx之日志log_format

  检查配置语法是否正确

nginx -t -c /etc/nginx/nginx.conf

  重新加载配置

nginx -s reload -c /etc/nginx/nginx.conf

  多次请求127.0.0.1,验证成功

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

  (005)Nginx之日志log_format

   (2)内置变量可以去官网查找:http://nginx.org/en/docs/,点击:Logging to syslog

  (005)Nginx之日志log_format

  (005)Nginx之日志log_format

  (005)Nginx之日志log_format

  (3)默认内置变量解析

  $remote_addr:客户端地址
  $remote_user:http客户端请求nginx,认证的用户名,默认没有开启这个认证模块的话不会记录该信息
  $time_local:nginx的时间
  $request:request请求行
  $status:response返回状态
  $body_bytes_sent:从服务端响应给客户端body信息的大小
  $http_referer:上一级页面的url地址
  $http_user_agent:记录客户端用什么来访问的
  $http_x_forwarded_for:记录每一级用户从http请求里面携带的http信息

 

 

 

 

   

  

上一篇:005 - Java线程之间通信和同步


下一篇:005本周总结报告