Jetty MDC处理程序不支持';不提供上下文路径
JettyJetty MDC处理程序不支持';不提供上下文路径,jetty,jetty-9,Jetty,Jetty 9,Jetty9.3.8.v20160314运行在AWS EC2 Linux机器上,使用Java1.8.0_51在两个不同的dir+context.xml-webapps/app1和webapps/app2目录下有两个web应用 我试图让每个webapp都有一个单独的日志,其名称中包含contextPath 每个应用程序都定义了以下webapps/appX.xml上下文- <Configure class="org.eclipse.jetty.webapp.WebAppContext">
9.3.8.v20160314
运行在AWS EC2 Linux机器上,使用Java1.8.0_51
在两个不同的dir+context.xml-webapps/app1
和webapps/app2
目录下有两个web应用
我试图让每个webapp都有一个单独的日志,其名称中包含contextPath
每个应用程序都定义了以下webapps/appX.xml
上下文-
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/appX</Set>
<Set name="war">
<SystemProperty name="jetty.home" default="."/>/webapps/appX
</Set>
</Configure>
但这一切都会转到unknown.log
。相反,使用servername
可以很好地工作,并为用于访问服务器的每个域创建单独的文件
因此,ContextLogHandler
似乎没有正确分配contextPath
为什么是空的
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %t %c{0} [%p] %m%n</pattern>
</encoder>
</appender>
<appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender">
<discriminator>
<key>contextPath</key>
<defaultValue>unknown</defaultValue>
</discriminator>
<sift>
<appender name="FILE-${contextPath}" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${jetty.home}/logs/${contextPath}.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${contextPath}_%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
<totalSizeCap>1GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %t %c{0} [%p] %m%n</pattern>
</encoder>
<append>true</append>
</appender>
</sift>
</appender>
<root level="INFO">
<appender-ref ref="STDOUT"/>
<appender-ref ref="SIFT"/>
</root>
</configuration>