[java] Log4j의 로그 회전

Log4j는 자바 애플리케이션에서 로깅을 구현하기 위해 널리 사용되는 라이브러리입니다. 이것은 애플리케이션에서 발생하는 이벤트나 메시지를 기록하고 분석하는 데 도움을 줍니다. Log4j는 기본적으로 로그 파일을 유지하고 디스크 공간을 효율적으로 사용하기 위해 로그 파일의 크기를 관리합니다. 이것을 “로그 회전”이라고 합니다.

로그 회전은 주기적으로 로그 파일을 분리하고 새로운 로그를 작성하는 프로세스입니다. 로그 파일의 크기가 일정 기준값을 초과하면 Log4j는 현재 로그 파일을 백업하고 새로운 로그를 작성하기 시작합니다. 이를 통해 디스크 공간을 낭비하지 않고 로그를 지속적으로 기록할 수 있습니다.

Log4j의 로그 회전은 다양한 방식으로 구성할 수 있습니다. 주요 설정 옵션은 다음과 같습니다.

아래는 Log4j를 사용하여 로그 회전을 구성하는 예제 코드입니다.

import org.apache.log4j.Logger;

public class Log4jApp {
    private static final Logger logger = Logger.getLogger(Log4jApp.class);

    public static void main(String[] args) {
        // 로그 회전 설정
        logger.info("MaxFileSize=10MB, MaxBackupIndex=5");
        logger.info("Log rotation example");

        for (int i = 0; i < 100; i++) {
            logger.info("Logging message " + i);
        }
    }
}

위의 코드에서는 logger.info()를 사용하여 메시지를 로깅합니다. MaxFileSize를 10MB로 설정하고 MaxBackupIndex를 5로 설정하였으므로, 로그 파일이 10MB를 초과하면 새로운 파일로 로그가 회전됩니다.