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