
在日常工作中,常需要收集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'; 本次请求的地址,如域名