gpt4 book ai didi

nginx - Nginx在上游响应日志中显示2种不同的状态

转载 作者:行者123 更新时间:2023-12-02 12:03:05 29 4
gpt4 key购买 nike

我在kubernetes集群中运行了一个nginx-inress Controller ,该请求的日志语句之一如下所示:

upstream_response_length: 0, 840
upstream_response_time: 60.000, 0.760
upstream_status: 504, 200

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

附言配置日志格式:
log-format-upstream: >-
{
...
"upstream_status": "$upstream_status",
"upstream_response_length": "$upstream_response_length",
"upstream_response_time": "$upstream_response_time",
...
}

最佳答案

根据 split_upstream_var ingress-nginx方法,将splits的结果作为nginx health checks的结果。

由于nginx可以具有several upstreams,因此您的日志可以这样解释:

  • 第一个上游已死(504)
  • 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
  • 第二上游作品(200)
  • 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 header 状态图

    关于nginx - Nginx在上游响应日志中显示2种不同的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58111709/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com