Java 向SLF4J日志语句添加上下文路径
我在一个tomcat中部署了多个SpringWebapps,并将错误消息记录在一个日志文件中。我需要记录请求被命中的webapp的上下文路径。 目前,我必须实现一个servlet过滤器,以便为每个请求设置变量值。必须这样做,因为MDC实例是每个线程的 由于应用程序的上下文路径是恒定的,有没有办法只设置一次MDC变量? 为了在MDC中设置Java 向SLF4J日志语句添加上下文路径,java,spring,tomcat,slf4j,Java,Spring,Tomcat,Slf4j,我在一个tomcat中部署了多个SpringWebapps,并将错误消息记录在一个日志文件中。我需要记录请求被命中的webapp的上下文路径。 目前,我必须实现一个servlet过滤器,以便为每个请求设置变量值。必须这样做,因为MDC实例是每个线程的 由于应用程序的上下文路径是恒定的,有没有办法只设置一次MDC变量? 为了在MDC中设置applicationId,我定义了一个Servlet过滤器 public class LogFilter implements Filter { @Ove
applicationId
,我定义了一个Servlet过滤器
public class LogFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
MDC.put("applicationId", request.getServletContext().getContextPath());
chain.doFilter(request, response);
}
}
没有找到任何其他方法,因此问题中提到的代码似乎是唯一的选择。关闭线程
public class LogFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
MDC.put("applicationId", request.getServletContext().getContextPath());
chain.doFilter(request, response);
}
}