Log4j는 자바 애플리케이션의 로깅을 담당하는 Java 라이브러리입니다. Log4j를 효과적으로 사용하기 위해서는 로깅 레벨, 로그 출력 형식, 출력 위치 등을 설정해야합니다. 이러한 설정은 log4j.properties 파일을 통해 구성할 수 있습니다.
log4j.properties 파일 작성하기
-
먼저, log4j.properties 파일을 프로젝트의 클래스패스에 위치시킵니다.
-
다음은 일반적인 log4j.properties 파일의 구성요소입니다:
# 로그 출력 형식 log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout log4j.appender.consoleAppender.layout.ConversionPattern=%d [%t] %-5p %c - %m%n # 로그 레벨 설정 log4j.rootLogger=INFO, consoleAppender
-
log4j.appender.consoleAppender
는 로그를 어디에 출력할지를 설정합니다. 이 예제에서는 콘솔에 출력하도록 설정되어 있습니다. -
log4j.appender.consoleAppender.layout
는 로그의 출력 형식을 설정합니다. 이 예제에서는 패턴 레이아웃(PatternLayout)을 사용하며, 로그 메시지의 날짜/시간, 스레드명, 로그 레벨, 로거 이름 등을 출력합니다. -
log4j.rootLogger
는 전체 로그 레벨을 설정합니다. 이 예제에서는 INFO 수준 이상의 로그만 출력하도록 설정되어 있습니다. 콤마(,)로 구분하여 다른 로그 appender를 추가할 수도 있습니다.
-
-
작성한 log4j.properties 파일을 원하는 설정으로 수정합니다.
log4j.properties 파일 설정값 변경하기
log4j.properties 파일에서 설정값을 변경하여 로그의 출력 형식이나 레벨을 조정할 수 있습니다. 아래는 일반적으로 변경할 수 있는 설정값입니다:
-
log4j.appender.<appender 이름>.layout.ConversionPattern
: 로그 메시지의 출력 형식을 변경할 수 있습니다. 패턴 레이아웃을 사용하며 다양한 옵션을 제공합니다. -
log4j.rootLogger
: 로그 레벨을 변경할 수 있습니다. TRACE, DEBUG, INFO, WARN, ERROR, FATAL 등 다양한 수준을 지원합니다. -
log4j.logger.<로거 이름>
: 특정 로거의 로그 레벨을 변경할 수 있습니다. 로거 이름은 패키지 이름 또는 클래스 이름을 포함할 수 있습니다.
이렇게 log4j.properties 파일을 적절히 수정하여 로깅 시스템을 원하는 대로 구성할 수 있습니다.