如何在 Jetty 7 中启用响应时间日志记录
Apache 和 Tomcat 都可以轻松地将响应超时记录到服务器访问日志(使用 %D 模式),但我无法在 Jetty 中找到任何等效的支持,无论是使用默认的 NCSARequestLog 还是> 或使用 logback-access (我首选的日志记录设置)。
有没有办法让 Jetty 记录这些时间?我可以看到可以使用某种自定义处理程序来收集此信息并将其提供给日志记录处理程序,但我希望像 StatisticsHandler
这样的东西可以为我做到这一点,因为它很明显已经跟踪此信息以生成其汇总统计数据。
Apache and Tomcat both make it easy to log response times out to the server access log (with the %D pattern), but I've been unable to find any equivalent support in Jetty, either with the default NCSARequestLog
or using logback-access (my preferred logging setup).
Is there a way of getting Jetty to log these times? I could see it being possible to use a custom handler of some kind to gather this information and make it available to the logging handler, but am hopeful that something like the StatisticsHandler
could do it for me as it's clearly already tracking this information to generate its aggregate stats.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
在
NCSARequestLog
上调用setLogLatency(true)
Call
setLogLatency(true)
onNCSARequestLog
有关如何通过配置启用响应时间日志记录的详细说明如下:监控 Jetty 请求日志中的延迟
摘要:
A good detailed explanation on how to enable response time logging through configuration is here: Monitoring latency in Jetty request log
Summary:
使用 logback access 1.1.0 或更高版本,您可以使用
%elapsedTime
转换字来获取以毫秒为单位的响应时间。来自 https://logback.qos.ch/manual/layouts.html :例如,使用:
将输出:
Using logback access 1.1.0 or later, you can use the
%elapsedTime
conversion word to get the response time in ms. From https://logback.qos.ch/manual/layouts.html :For example, using:
Will output: