我正在使用xsbt-web-plugin来开发一个the服务。
为了便于调试,我想在控制台中切换请求日志,如下面的行所示。
22/Dez/2012:15:29:56 +0000 "GET /messages HTTP/1.1“200 27276
在生产中,我使用的是NCSARequestLog,这很好,但是在开发过程中,我想将日志包含在我的sbt console中,通过container:start/启动容器
如何启用请求日志?
发布于 2013-08-23 21:07:46
要启用请求日志,可以通过自定义NCSARequestLog文件配置jetty.xml。
将此添加到build.sbt中
env in Compile := Some(file(".") / "jetty-env.xml" asFile)创建myproject/jetty-env.xml
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="handler">
<New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler">
<Set name="requestLog">
<New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog">
<Set name="filename"><Property name="jetty.logs" default="./logs"/>/test-yyyy_mm_dd.request.log</Set>
<Set name="filenameDateFormat">yyyy_MM_dd</Set>
<Set name="LogTimeZone">GMT</Set>
<Set name="retainDays">90</Set>
<Set name="append">true</Set>
</New>
</Set>
</New>
</Set>
</Configure>在sbt中,运行container:start,您将看到在myproject/log下收集的请求日志。当我测试它时,Jetty不会自己创建日志目录--我必须自己创建。
您可以使用tail实时查看请求日志。
tail -f myproject/logs/test-2013_08_23.request.log有关这方面的完整示例,请参见 branch of xwp-template。
https://stackoverflow.com/questions/14005066
复制相似问题