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)의 로그 수준을 변경하려고합니다. 그것은 성취 가능하고 어떻게?