나는 스프링 부트에서 child() 컨텍스트를 동적으로 만들고 각 컨텍스트를 구분 된 파일에 기록하려고합니다. 이것이 가능한가?Spring 부트 하위() 컨텍스트에 의한 로그백 분리
이유는 다른 어댑터에 대한 동적 스프링 통합 구성이 있기 때문입니다. 이것은 동일한 어댑터 구성으로 다른 연결로 작업하는 데 매우 유용하지만 하나의 로그 파일에 대한 많은 정보가 있습니다.
JNDI 컨텍스트 분리에서도 스레드 분리를 보았지만이 작업을 수행하는 가장 좋은 방법은 무엇인지 모르겠습니다. logback.xml 파일을 구성하는 것만 가능합니까?
업데이트 :
아마 옵션이 MDC 내가이 개념을 이해하고 있지 않다. 다른와 @Component
에도 적용 할 수
@MessageEndpoint
public class TestComponents {
private static final Logger LOGGER = LoggerFactory.getLogger(Test.class);
@Router(inputChannel = "inputRouter")
public MessageChannel router(Message<String> demo) {
..
LOGGER.trace(“TEST”);
…
LOGGER.error(“TEST”);
…
}
@ServiceActivator(inputChannel="inputService")
public void service(Message<String> demo) {
..
LOGGER.trace(“TEST”);
..
}
@Transformer(inputChannel="inputTransformer", outputChannel="outputTransformer")
public byte[] transformerToByte(Message<String> demo) {
..
LOGGER.debug(“TEST”);
..
}
}
예 : 예를 들어, 당신은 다음과 같은 @Transformer
, @ServiceActivator
및 @Router
여러 봄의 통합 요소와 봄 @MessageEndpoint
요소에 대한 MDC를 적용하는 방법을 설명 할 수 행동 양식. 내가
인해 문서에 설명 된 paragraph의 성능에 대해 걱정 :
MDC logback-고전 값은 중간 주파수로 MDC에 배치되어 있다고 가정에서 구현 있습니다
감사합니다. 클라우스입니다. 우리의 커스텀 설정이 스프링 부트 설정을 오버라이드하기 때문에이 접근법을 사용할 수는 없지만 스프링 부트는 여전히 child() 컨텍스트가 생성되기 전과 후에 로그백을 사용하고 있습니다. 나는 스프링 확장을 사용하여 프로그램 적으로 설정을 커스터마이징하고있다. – crm86