首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nginx在上行响应日志中显示两种不同的状态

Nginx在上行响应日志中显示两种不同的状态
EN

Stack Overflow用户
提问于 2019-09-26 15:33:23
回答 1查看 515关注 0票数 1

我在kubernetes集群中运行nginx-ingress控制器,其中一个请求的日志语句如下所示:

代码语言:javascript
复制
upstream_response_length: 0, 840
upstream_response_time: 60.000, 0.760
upstream_status: 504, 200

我不太明白这是什么意思?Nginx的响应超时等于60秒,然后尝试再次请求(成功)并记录两次请求?

P.S.日志格式配置:

代码语言:javascript
复制
log-format-upstream: >-
      {
      ...
      "upstream_status": "$upstream_status",
      "upstream_response_length": "$upstream_response_length",
      "upstream_response_time": "$upstream_response_time",
      ...
      }
EN

回答 1

Stack Overflow用户

发布于 2019-09-26 17:22:10

根据ingress-nginxsplit_upstream_var方法,它splitsnginx health checks的结果。

因为nginx可以有several upstreams,所以您的日志可以这样解释:

  1. First upstream is dead (504)

(第一个上游已死(504))

代码语言:javascript
复制
upstream_response_length: 0 // responce from dead upstream has zero length
upstream_response_time: 60.000 // nginx dropped connection after 60sec
upstream_status: 504 // responce code, upstream doesn't answer

  1. Second upstream works (200)

代码语言:javascript
复制
upstream_response_length: 840 // healthy upstream returned 840b 
upstream_response_time: 0.760 // healthy upstream responced in 0.760
upstream_status: 200 // responce code, upstream is ok

附注: JFYI,这是一个很酷的HTTP头状态图

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58111709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档