nginx服务器日志相关指令主要有两条
log_format,用来设置日志格式
access_log,用来指定日志文件的存放路径、格式和缓存大小,可以参考
ngx_http_log_module
。
log_format 设置日志格式
log_format指令用来设置日志的记录格式,它的语法如下:
log_format name format {format …}
其中,name表示定义的格式名称,format表示定义的格式样式。
1. log_format有一个默认的、无须设置的main日志格式,如下图所示:
2.也可以根据自己的需求,自定义日志的记录格式,但是名称不能重复
log_format main ' $remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_x_forwarded_for" "$http_referer" '
'"$http_user_agent" "$upstream_addr" "$http_tenant" "$http_istest"';
3.常用的内置变量以及含义
参数 说明 示例
$remote_addr 客户端地址 172.16.11.1
$remote_user 客户端用户名称 --
$time_local 访问时间和时区 20/Dec/2022:10:47:58 +0800
$request 请求的URI和HTTP协议 "GET / HTTP/1.1"
$status HTTP请求状态 304
$upstream_status upstream状态 0
$body_bytes_sent 发送给客户端文件内容大小 -
$http_referer url跳转来源,用于记录是从哪个页面链接访问过来的
$http_user_agent 用户终端浏览器等信息,即客户浏览器的相关信息 "Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0"
$http_host 请求地址,即浏览器中你输入的地址(IP或域名) www.baidu.com 192.168.100.100
$ssl_protocol SSL协议版本 TLSv1
$ssl_cipher 交换数据中的算法 RC4-SHA
$upstream_addr 后台upstream的地址,即真正提供服务的主机地址 10.10.10.100:80
$request_time 整个请求的总时间 0.205
$upstream_response_time 请求过程中,upstream响应时间 0.002
access_log 配置
观察nginx.conf配置文件中的server段,可以看到如下的信息:access_log /opt/lucky/logs/nginx/web_access.log main;
代表保存访问信息的日志文件是使用了main格式存储访问信息。
版权声明:本文为weixin_42324463原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。