关于nginx日志中的time_local
高洛峰
高洛峰 2017-05-16 17:12:27
0
1
926

想基于nginx日志统计某一接口如秒杀的最大并发数 nginx日志格式是这样配置的

log_format: $remote_addr [$time_local] "$request" $status $upstream_response_time $body_bytes_sent

Nginx官方文档是这样定义time_local

$time_local

local time in the Common Log Format

现在不确定这是请求过来的时间 还是请求处理完毕后记录此条日志的时间 只有是前者才能基于该时间统计最大并发数吧

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
世界只因有你

摘自:http://serverfault.com/questi...

$local_time 变量包含写入日志条目的时间。

当读取 HTTP 请求标头时,nginx 会查找关联的虚拟服务器配置。如果找到虚拟服务器,请求将经历六个阶段:

  • 服务器重写阶段

  • 定位阶段

  • 位置重写阶段(可以使请求回到上一阶段)

  • 访问控制阶段

  • try_files 阶段

  • 日志阶段

由于日志阶段是最后一个阶段,因此 $local_time 变量距离请求结束时间比请求开始时间要近得多。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板