15장. 로깅 서브시스템
이번 장에서는 시스템 상황이나 에러에 대한 정보를 출력하는 로깅 서브시스템에 대해서 설명한다. JBoss가 부팅될 때 기록하는 부트 로거와 부팅된 이후에 사용하는 로깅 서브시스템에 대해 설명한다. 로그 파일이 남는 경로 및 기본적인 로깅 설정 방법에 대해서 살펴보자.
1.JBoss Logging 이해
로깅은 애플리케이션의 활동을 일련의 메시지로 기록하는 것이다.
로그 메시지는 애플리케이션을 개발하면서 디버깅하는 개발자나 운영 환경에서 시스템을 관리하는 관리자에게 매우 중요한 정보를 제공한다.
최근의 Java 로깅 프레임워크들은 대부분 정확한 시간과 메시지의 출처 등 다른 정보도 함께 제공하고 있다.
JBoss EAP 6는 EAP 자체의 정보를 출력하거나 배포된 애플리케이션에서 사용하기 위해 다양한 설정이 가능한 로깅 시스템을 제공한다. JBoss EAP 6의 로깅 시스템은 JBoss LogManager를 기반으로 하고 log4j, Java Utils 로깅(java.util.logging) 및 JBoss Logging을 포함한 다양한 로깅 프레임워크를 지원한다.
또, JBoss EAP 6에 배포되는 애플리케이션에서 로깅 기능을 사용할 수 있도록 강력하고 편리한 로깅 프레임워크인 JBoss Logging을 제공한다.
JBoss LogManager 는 다음과 같은 로깅 프레임워크를 지원한다.
- JBoss Logging - JBoss EAP 6에 포함되어 있다.
- Apache Commons Logging - http://commons.apache.org/logging/
- Simple Logging Facade for Java (SLF4J) - http://www.slf4j.org/
- Apache log4j - http://logging.apache.org/log4j/1.2/
- Java SE Logging (java.util.logging) -http://download.oracle.com/javase/6/docs/api/java/util/logging/package-summary.html
부트 로거 설정
부트 로그는 JBoss EAP 6 서버 부팅 중 발생한 이벤트를 기록한다. JBoss에서 제공하는 로깅 서브시스템도 extension으로 제공되는 모듈이기 때문에 로깅 서브시스템이 활성화되기 전까지 발생하는 이벤트를 기록할 로거가 필요하다. 부트 로거가 그 역할을 한다.
로그 출력 레벨 및 로그 로테이션 등이 이미 설정되어 있어 기본값에서 변경하지 않아도 된다.