当前位置: 首页 > news >正文

Nginx 日志格式

默认日志格式配置

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

该格式记录了客户端IP、用户、时间、请求、状态码、响应数据量、来源页、UA及代理信息‌。

常见变量及含义

1. 客户端信息

  • $remote_addr
    客户端 IP 地址(直接连接的客户端 IP,若存在代理则可能是代理服务器的 IP)。
  • $http_x_forwarded_for
    客户端原始 IP(当请求经过代理时,如 CDN 或负载均衡器,此变量记录原始客户端 IP 和代理链)。
  • $remote_user
    通过 HTTP 基础认证的用户名,未认证时为 -
  • $http_user_agent
    客户端浏览器或工具的 User-Agent 信息(如 Mozilla/5.0 ...)。

2. 请求信息

  • $request
    完整的请求行,包含请求方法、URI 和协议(如 GET /index.html HTTP/1.1)。
  • $request_method
    请求方法(如 GETPOST)。
  • $request_uri
    完整的原始请求 URI(包含查询参数)。
  • $args
    请求中的查询参数(即 ? 后的部分,如 name=john&age=30)。
  • $query_string
    $args
  • $scheme
    请求协议(如 httphttps)。
  • $host
    请求的 Host 头(域名或 IP + 端口)。
  • $server_protocol
    服务器协议版本(如 HTTP/1.1)。

3. 响应信息

  • $status
    HTTP 响应状态码(如 200404500)。
  • $body_bytes_sent
    发送给客户端的响应体大小(字节数,不包含响应头)。
  • $bytes_sent
    发送给客户端的全部数据大小(包括响应头和响应体)。
  • $sent_http_<header>
    响应头字段值,如 $sent_http_content_type 表示 Content-Type 头的值。

4. 连接信息

  • $connection
    连接序列号(唯一标识一个 TCP 连接)。
  • $connection_requests
    当前连接上处理的请求数量(对于 HTTP Keep-Alive 连接有效)。
  • $request_time
    请求处理时间(从读取客户端第一个字节到发送完响应的时间,单位:秒,精度到毫秒)。
  • $upstream_response_time
    反向代理时,后端服务器的响应时间(单位:秒,可能有多个值,用逗号分隔)。

5. 反向代理相关

  • $upstream_addr
    反向代理的后端服务器地址(IP:Port)。
  • $upstream_status
    后端服务器的 HTTP 响应状态码。
  • $upstream_http_<header>
    后端服务器返回的响应头字段,如 $upstream_http_server 获取后端 Server 头的值。

6. 其他常用变量

  • $time_local
    本地时间的访问时间戳(格式:19/May/2024:15:30:01 +0800)。
  • $server_port
    接收请求的服务器端口。
  • $http_referer
    请求来源页面的 Referer 头(即用户从哪个页面跳转而来)。
  • $request_length
    请求的总长度(包括请求行、请求头和请求体)。
  • $gzip_ratio
    响应体的压缩比(如 2.5 表示压缩后大小是原始大小的 40%)。

相关文章:

  • Zabbix监控自动化(Zabbix Mnitoring Automation)
  • Python散点图(Scatt Plot):数据探索的“第一张图表”
  • Eclipse 创建 Java 类
  • C语言的内存函数
  • 【Linux】system V消息队列,信号量
  • ROS合集(三)RTAB-Map + EuRoC 数据格式概述
  • 权威机构预测:DeepSeek或将在4月下旬发布新模型
  • RTSP/Onvif安防监控系统EasyNVR级联视频上云系统EasyNVS报错“Login error”的原因排查与解决
  • 关于前端指令
  • 用于功能磁共振成像分析和脑部疾病检测的基于扩散增强的自监督图对比学习|文献速递-医学影像人工智能进展
  • Docker-部署ES和Kibana
  • python格式化数字(自动补0)
  • 图论——kruskal算法
  • OpenCV中的连通组件分析能做什么?是怎么使用的
  • 如何为预训练模型进行领域适配:全参数微调、LoRA 还是 Prompt Tuning?
  • request库基础学习
  • axios 请求拦截器和 响应拦截器总结
  • 让AI看见世界:MCP协议与服务器的工作原理
  • github上传操作简单说明
  • MySQL进阶篇-InnoDB引擎(逻辑存储结构、内存结构、磁盘结构、后台线程、事务原理、MVCC)
  • 上汽集团一季度净利润30.2亿元,同比增长11.4%
  • 83岁连丽如每周登台说书,还上了15堂连派评书课
  • 4月人文社科联合书单|天文学家的椅子
  • 美乌总统梵蒂冈会谈,外交部:望有关各方继续通过对话谈判解决危机
  • 北美票房|《罪人》遭媒体唱衰,好莱坞业内人士集体反击
  • 王一博赛车故障退赛冲上热搜,工作室回应:下次再战