documentzhangx66
V2EX  ›  问与答

发现 nginx 、tomcat 等 WebServer 的一个重大缺陷

  •  
  •   documentzhangx66 · Jul 27, 2023 · 1735 views
    This topic created in 1019 days ago, the information mentioned may be changed or developed.
    当 request 到达 nginx 、tomcat 时,它们没有进行 log ,只有当 request 处理完毕后,才会产生一条日志,记录到 访问日志里。

    因此,如果处理过程非常久,只要没处理完毕,就没有日志,导致很难快速判断问题。
    5 replies    2023-07-28 00:27:48 +08:00
    securityCoding
        1
    securityCoding  
       Jul 27, 2023 via Android
    这个跟 ng 有啥关系
    documentzhangx66
        2
    documentzhangx66  
    OP
       Jul 27, 2023
    @securityCoding

    说明 nginx 在设计时,没认真考虑这个问题。

    根据事件发生时机,一个处理过程,其实会有很多种状态,比如:

    准备,开始,过程中,超时,错误,完成。一共 6 种状态。

    而 nginx 只有 access 与 error 2 种状态。
    vibbow
        3
    vibbow  
       Jul 28, 2023
    你需要的是 debug log ,而不是 access log
    wdlth
        4
    wdlth  
       Jul 28, 2023
    编译 nginx 时加上--with-debug ,再把 error_log 的级别设置成 debug 就有 debug 级别的日志了。
    wangkun025
        5
    wangkun025  
       Jul 28, 2023
    帮你问了 chatGPT ,说确实没自带这个功能,可以通过第三方模块实现,比如 ngx_http_echo_module
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4484 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 05:29 · PVG 13:29 · LAX 22:29 · JFK 01:29
    ♥ Do have faith in what you're doing.