Java 데몬 실행에 필요한 로깅 설정-1

JAVA-로깅설정

목록 보기
1/2
post-thumbnail

java로 작성한 데몬 프로그램이 서버에서 실행될 때 운영이나 기타 이유로 로그를 기록해야되는 상황이 필수로 발생합니다.
데몬 실행 시 필요한 로깅 설정을 정리해보려 합니다.
java를 사용할 시 로깅을 도와주는 대표적인 라이브러리인 Log4j를 활용하였습니다.

Log4j : 자바 기반의 로깅 유틸리티로 Apache에서 만든 오픈소스 라이브러리

log4j 설정파일을 소스안에 두는것과 따로 빼두는것의 차이점

Log4j 설정 파일을 데몬 소스 코드 안에 넣거나 따로 빼두는 것은 어플리케이션의 유지보수성과 설정의 편의성 측면에서 차이가 있습니다.

1. Log4j 설정 파일을 소스 코드 안에 넣는 경우:

장점:

  • 포함성 : 모든 코드와 설정이 하나의 코드베이스에 포함되어 있어 코드 이동이나 배포가 간편할 수 있습니다.
  • 포터빌리티 : 설정 파일이 데몬 실행 파일과 함께 포함되어 있기 때문에 다른 환경으로 이동해도 설정 파일을 찾는 데 문제가 없습니다.

단점:

  • 유지보수의 어려움 : 설정이 코드와 섞여 있어서, 설정 변경 시 소스 코드를 수정하고 다시 빌드해야 합니다.
  • 재배포 필요 : 설정 변경 시마다 데몬을 재배포해야 합니다.
  • 다수의 데몬에서 같은 설정 사용 어려움 : 같은 설정 파일을 사용하더라도 데몬마다 수정이 필요할 수 있습니다.

2. Log4j 설정 파일을 따로 빼두는 경우:

장점:

  • 유지보수성 향상 : 설정이 별도의 파일에 따로 분리되어 있어, 설정 변경 시 소스 코드를 건드리지 않고 설정 파일만 수정할 수 있습니다.
  • 동적으로 로딩 가능 : 설정 파일이 외부에 있으면 런타임 중에 변경이 가능하며, 이로써 데몬을 중지하지 않고 로깅 설정을 변경할 수 있습니다.
  • 환경별 다른 설정 용이 : 다른 환경에서 다른 설정 파일을 사용하기 용이합니다.

단점:

  • 파일 경로 관리 필요 : 설정 파일이 외부에 있기 때문에 파일 경로를 관리해야 합니다.
  • 배포와 함께 전달 필요 : 설정 파일을 데몬과 함께 배포하거나, 설정 파일이 존재하는 경로에 의존성을 두어야 합니다.
profile
숲을 보고 나무도 보자.

0개의 댓글