以编程方式配置Jetty的记录器

时间:2009-10-06 04:29:43

标签: logging jetty

如何以编程方式配置Jetty的记录器?我在一个独立的应用程序中使用Jetty,并希望更改一些Jetty内部生成的警告的日志级别。理想情况下,我可以通过编程方式(即在代码中)执行此操作,而无需指定XML文件。

我正在使用Jetty 6.1.20。

2 个答案:

答案 0 :(得分:3)

Jetty使用slf4j,因此您可以使用任何所需的日志框架或slf4j实现。

Jetty附带Simple slf4j实现,它记录INFO级别或更高级别。因此,您要么将捆绑的slf4j jar更改为具有所需日志级别的实现,要么使用桥接到具有所需级别的另一个框架,或者提供可以通过设置的自定义日志类,例如,

System.setProperty("org.mortbay.log.class", "com.example.JettyLog");

更多信息here

答案 1 :(得分:1)

如果您需要获取请求日志,则解决方案仅在http://www.eclipse.org/jetty/documentation/current/configuring-jetty-request-logs.html

结束
NCSARequestLog requestLog = new NCSARequestLog("/var/logs/jetty/jetty-yyyy_mm_dd.request.log");
requestLog.setAppend(true);
requestLog.setExtended(true);
requestLog.setLogTimeZone("GMT");

server.setRequestLog(requestLog);