爱分享

日常nginx的access日志字段解释

image.png

在日常工作中,常需要收集nginx的access,便于后续分析稳定性与性能等问题,对此收集哪个nginx的日志的字段就比较重要了,

今天分享一例nginx日志在实际工作中的常用的几个字段,并简要的说明它们的作用,详情如下:

多数情况下使用beat来收集,便于后面切割与识别会对日志的每段进行分隔,本实例则适用 | 来分隔

  • 使用nginx默认日志收集,日志格式定义:

log_format  main  '$time_local|$remote_addr|$upstream_addr|\

$remote_user|$request_method|$uri|$upstream_response_time|\

$request_time|$status|$body_bytes_sent|$http_referer|\

$http_user_agent|$http_x_forwarded_for|$http_host';

  • 各字段间的 | 符号用于日志收集后使用logstash切割时的分格符

相关字段含义如下:
         $time_local           日志产生的时间
         $remote_addr       客户端或是公网代理IP
         $upstream_addr    反向代理IP
         $remote_user        远程用户信息
         $request_method  GET或POST等请求方式
         $uri                         除域名外的URL部份
         $upstream_response_time  反向代理消耗时间
         $request_time         约等于单次请求耗时
         $status                    http状态
         $body_bytes_sent   单次请求数据包大小
         $http_referer           请求来源
         $http_user_agent     UA
         $http_x_forwarded_for  转发地址
         $http_host';              本次请求的地址,如域名


nyx
nyx
这个人很神秘