728x90
반응형
# Root logger option log4j.rootLogger=info, file, stdout # Direct log messages to a log file log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=/data/mmsgoam/logs/oam/donemgr/new_donemgr.log log4j.appender.file.MaxFileSize=50MB log4j.appender.file.MaxBackupIndex=20 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n # Direct log messages to stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n |
기존에 쓰던 log4j.properties다.
현재의 로그들은 new_donemgr.log에 기록하고 있었는데, info 로그와 별개로 error로그를 다른 로그파일로 관리할 수 있으면 좋겠다는 사용자의 요청이 들어왔다.
# Root logger option log4j.rootLogger=info, file, stdout log4j.logger.error=error, err # Direct log messages to a log file log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=/data/mmsgoam/logs/oam/donemgr/new_donemgr.log log4j.appender.file.MaxFileSize=50MB log4j.appender.file.MaxBackupIndex=20 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n # Direct log messages to a log file log4j.appender.err=org.apache.log4j.RollingFileAppender log4j.appender.err.File=/data/mmsgoam/logs/oam/donemgr/new_donemgr_err.log log4j.appender.err.MaxFileSize=50MB log4j.appender.err.MaxBackupIndex=20 log4j.appender.err.layout=org.apache.log4j.PatternLayout log4j.appender.err.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n # Direct log messages to stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n |
요청대로 수정한 log4j.properties 이다.
lgo4j.rootLogger 외에도 logger 객체를 만들어야한다.
현재 자바 소스 로그들은 일반적으로 log4j.rootLogger의 객체에 담긴다.
사용자의 요청에 따라 error가 발생한 경우 로그를 따로 관리해 생성해야 한다.
이런 경우 단순히 config파일 수정만으로 로그를 따로 관리 할 수 없다.
private static Logger logger = Logger.getLogger(DoneMsgScheduler.class);
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
................
logger.info("DoneMsgScheduler: Excute Scheduler. logTime: " + logTime);
try {
} catch (IOException e) {
logger.error(e.getMessage(), e);
}
}
기존의 JAVA 소스
private static Logger logger = Logger.getLogger(DoneMsgScheduler.class);
private static Logger errLogger = Logger.getLogger("error");
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
................
logger.info("DoneMsgScheduler: Excute Scheduler. logTime: " + logTime);
try {
} catch (IOException e) {
errLogger.error(e.getMessage(), e);
}
}
변경한 소스...
log4j.logger.error=error, err 는
log4j.logger.{소스에 세팅 된 logger 명} = {logger 레벨}. {logger 객체 명} 이다.
[결과]
728x90
반응형
'IT > WEB' 카테고리의 다른 글
[Java] 배열에 요소 추가하기 (0) | 2022.07.06 |
---|---|
[Javascript] 자주쓰는 정규식 (0) | 2022.07.06 |
인터셉터 (0) | 2022.06.26 |
swagger ui 추가하기 API 설명 웹 페이지 (0) | 2022.06.20 |
[JAVA] 환경변수 값 불러오기 System.getenv() (0) | 2022.06.10 |