Jetty HTTP日志记录

时间:2012-12-06 01:44:36

标签: java http logging jetty

我想让Jetty记录所有HTTP请求(以及正文)和响应。这是Jetty原生支持的吗?理想情况下,它会记录到我现有的log4j日志文件。

我正在运行Jetty 6。

2 个答案:

答案 0 :(得分:15)

Jetty附带了一个可以登录NCSA格式的请求记录器。该格式不包括您需要的请求正文等内容,但该标准格式适合webalizer等工具。

如果需要记录更多内容,可以使用logback请求日志实现,或者通过实现Jetty的RequestLog接口编写自己的记录器。

除此之外,我强烈建议升级到jetty7 / 8(相同的代码库,但8提供servlet 3.0功能)。或直接转移到jetty9。

以下是请求日志的jetty9文档: http://www.eclipse.org/jetty/documentation/current/configuring-logging.html#configuring-jetty-request-logs

jetty7 / 8相同: http://wiki.eclipse.org/Jetty/Tutorial/RequestLog

我把它作为练习让你找到jetty6文档或更好,升级。 :)

好的,偶然发现了jetty6文档:http://docs.codehaus.org/display/JETTY/Logging+Requests

答案 1 :(得分:0)

TL; DR

您必须启用正确的模块,只需将其添加到start.ini文件中即可:

# Create access log file
--module=requestlog

# Redirect all the console log to a file
--module=console-capture

重新启动Jetty并查看logs目录。