1
我需要实现基于请求的日志记录。 基于头 - 日志级别标头。需要执行RequestBasedLogging
在我的代码中,我使用JAX-RS并实现了ContainerRequestFilter。
@Override
public void filter(final ContainerRequestContext context) throws IOException {
String log_level = context.getHeaderString("log-level-header");
//translate to actual log level
Logger root = (Logger)LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME);
root.setLevel(logLevelToSet);
}
我正在使用Logback和slf4j API。 问题是,我将日志级别设置为单例RootLogger,因此最终会修改跨应用程序的日志级别。
相反,我打算改变特定线程(RequestBasedLogging)的日志级别。它是可以实现的以及如何?