[java] Log4j의 로깅 메소드 로그를 주기적으로 회전하는 방법
Log4j는 자바 어플리케이션에서 로깅을 위해 널리 사용되는 강력한 라이브러리입니다. 로깅은 시스템의 동작을 디버깅하고 추적하기 위해 중요한 역할을 합니다. 하지만 로그 파일이 계속해서 증가하면 디스크 공간을 차지할 뿐만 아니라 로그 파일을 분석하기도 어렵게 만듭니다. 이러한 문제를 해결하기 위해 로그 파일을 주기적으로 회전하는 방법을 알아보겠습니다.
Log4j의 파일 로거 설정
먼저 Log4j의 파일 로거를 설정해야 합니다. log4j.properties
파일을 편집하여 다음과 같은 설정을 추가합니다.
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=/path/to/log/file.log
log4j.appender.FILE.MaxFileSize=10MB
log4j.appender.FILE.MaxBackupIndex=5
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %p [%t] %c - %m%n
위 설정에서 log4j.appender.FILE.File
은 로그 파일의 경로를 나타냅니다. log4j.appender.FILE.MaxFileSize
는 각 파일의 최대 크기를 지정하며, 여기서는 10MB
로 설정되어 있습니다. log4j.appender.FILE.MaxBackupIndex
는 유지되는 로그 파일의 최대 개수를 나타냅니다. 즉, 여기서는 최대 5개의 백업 파일이 유지됩니다.
로그 파일 회전 구성
위 설정에서 org.apache.log4j.RollingFileAppender
를 사용하고 있으므로 로그 파일 회전이 자동으로 처리됩니다. 이는 MaxFileSize
에 지정된 크기에 도달하면 새로운 파일을 만들고 이전 파일은 백업 파일로 이동합니다. MaxBackupIndex
에 지정된 개수를 초과하는 백업 파일은 삭제됩니다.
이제 Log4j는 설정된 크기에서 자동으로 로그 파일을 회전할 것입니다. 이를 통해 로그 파일의 크기를 제한하고 디스크 공간을 절약할 수 있습니다.