【问题标题】:Time taken by the request in jetty 10 loggingjetty 10 日志记录中请求所花费的时间
【发布时间】:2021-10-01 06:53:17
【问题描述】:

这是configure jetty logging 的后续问题。是否有任何属性给出请求所花费的时间?

123.4.5.6 - - [27/Aug/2004:10:16:17 +0000] "GET /jetty/tut/XmlConfiguration.html HTTP/1.1" 200 76793 "http://localhost:8080/jetty/ tut/logging.html" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040614 Firefox/0.8"

以上参数已在configure jetty logging 中定义。但我没有看到任何参数可以为我们提供请求所花费的时间。

注意 - 它曾经在 jetty9 中被称为日志延迟 - jetty9 custom logging

【问题讨论】:

    标签: java eclipse jetty jetty-10


    【解决方案1】:

    您需要更改CustomRequestLog 的格式字符串以包含%T 百分比代码。这在 CustomRequestLog 的 javadoc 中有记录。 (见https://javadoc.io/doc/org.eclipse.jetty/jetty-server/latest/org.eclipse.jetty.server/org/eclipse/jetty/server/CustomRequestLog.html

    • %T - 处理请求所用的时间,以秒为单位。
    • %{UNIT}T - 的 处理请求所花费的时间,以 UNIT 给出的时间单位表示。有效的 单位是 ms 表示毫秒,us 表示微秒,s 表示 秒。使用 s 给出与 %T 相同的结果,但没有任何格式; 使用我们的结果与 %D 相同。

    如果您不使用CustomRequestLog 并自己扩展RequestLog,您可以自己获得延迟:

    long latency = System.currentTimeMillis() - request.getTimeStamp();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-05
      • 2017-03-17
      • 2016-03-26
      • 1970-01-01
      • 2018-03-10
      • 1970-01-01
      • 1970-01-01
      • 2014-02-20
      相关资源
      最近更新 更多