Nginx日志主要分为两种:访问日志和错误日志。日志开关在Nginx配置文件(/etc/nginx/nginx.conf)中设置,两种日志都可以选择性关闭,默认都是打开的。
访问日志
访问日志主要记录客户端访问Nginx的每一个请求,格式可以自定义。通过访问日志,你可以得到用户地域来源、跳转来源、使用终端、某个URL访问量等相关信息。Nginx中访问日志相关指令主要有两条:
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
变量名称 | 变量描述 | 举例说明 |
$remote_addr | 客户端地址 | 192.168.13.147 |
$remote_user | 客户端用户名称 | – |
$time_local | 访问时间和时区 | 03/Jul/2018:15:01:32 +0800 |
$request | 请求的URI和HTTP协议 | “"GET /index.html HTTP/1.1” |
$http_host | 请求地址,即浏览器中你输入的地址(IP或域名) | 192.168.13.1 |
$status | HTTP请求状态 | 200 |
$upstream_status | upstream状态 | 200 |
$body_bytes_sent | 发送给客户端文件内容大小 | 571 |
$http_referer | 跳转来源 | “http://www.findme.wang/” |
$http_user_agent | 用户终端代理 | Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36 |
$ssl_protocol | SSL协议版本 | TLSv1 |
$ssl_cipher | 交换数据中的算法 | RC4-SHA |
$upstream_addr | 后台upstream的地址,即真正提供服务的主机地址 | 192.168.13.1:8360 |
$request_time | 整个请求的总时间 | 0.130 |
$upstream_response_time | 请求过程中,upstream响应时间 | 0.001 |
错误日志
错误日志主要记录客户端访问Nginx出错时的日志,格式不支持自定义。错误日志由指令error_log来指定,具体格式如下:
#关键字 日志文件 错误日志级别
error_log file level;
错误日志级别常见的有 [ debug | info | notice | warn | error | crit ],从左至右,日志详细程度逐级递减,即debug最详细,crit最少,默认warm