2013-09-27 3 views
0

j2ee 응용 프로그램에서 일하고 있습니다. 우리는 세션 빈 (20 인스턴스)을 사용하고 있습니다. MDC는 각 요청마다 메시지 ID를 기록하는 데 사용했습니다.log4j MDC의 가시성이 인스턴스 수준입니까? 세계적인 수준?

import org.apache.log4j.Logger; 
import org.apache.log4j.MDC; 
public class ReqEng{ 
void process(){ 
Logger logger = Logger.getLogger(this.getClass().getPackage().getName()); 

MDC.put("MESSAGE_ID", messageID); 
logger.info(" Hit ReqEng... !!! "); 
MDC.remove("MESSAGE_ID"); } 
} 

여기 내 질문은이 콩이 여러 인스턴스로 실행될 때입니다. 한 인스턴스의 정보가 다른 인스턴스의 로그 정보와 충돌합니다.

답변

1

MDC는 스레드 로컬이므로 다른 스레드 (동일한 인스턴스 또는 Bean의 다른 인스턴스)에서의 호출은 충돌하지 않습니다.