11. 로깅 라이브러리
java.util.logging은 실제 개발 환경에서 잘 사용되지 않고 있음
⚠️
Warning
java.util.logging을 잘 사용하지 않는 이유
| 항목 | 설명 |
|---|---|
| 1. 확장성 부족 | 로그 포매팅, 핸들러, 설정 방식이 유연하지 못하고 제한적, 복잡한 로그 처리에 적합하지 않음 |
| 2. 설정의 복잡성과 불편함 | logging.properties 파일 방식은 직관적이지 않고 환경별 설정이 어려움, 외부 설정 주입도 번거로움 |
| 3. Stack Trace 출력 문제 | JUL은 예외 로깅 시 예외 메시지가 충분히 상세하지 않거나, 포맷이 일관되지 않음 |
| 4. 로그 수준(Level)의 비직관성 | FINE, FINER, FINEST 등의 네이밍이 명확하지 않아서 개발자가 직관적으로 쓰기 어려움 |
| 5. 표준 출력과 연동 문제 | System.out/err와의 연동이 부자연스럽거나 누락되는 경우가 있으며, 이로 인해 콘솔 디버깅이 어려움 |
| 6. 성능 이슈 | 멀티스레딩 환경에서의 성능 저하나 동기화 문제가 존재할 수 있음 (특히 고성능 서비스에서는 치명적) |
| 7. 생태계 및 커뮤니티 부족 | JUL 기반의 도구나 플러그인, 통합 솔루션이 Log4j, SLF4J, Logback에 비해 부족함 |
1. Logging 라이브러리
로깅을 처리하기 위한 대표적인 외부 라이브러리로는 Log4J2 와 Logback 이 있음
2. Log4j
On August 5, 2015 the Logging Services Project Management Committee announced that Log4j 1.x had reached end of life. For complete text of the announcement please see the Apache Blog. Users of Log4j 1 are recommended to upgrade to Apache Log4j 2.
- Log4j 1.x는 더 이상 유지보수되지 않음
- 2015년 8월 5일자로 End of Life(EOL) 선언됨
- Log4j 1.x는 더 이상 보안상 안전하지 않음
- 새 프로젝트에는 절대로 Log4j 1.x를 사용하지 말 것이 명시됨
- Log4j 1을 사용하는 사용자들은 Apache Log4j 2로 업그레이드할 것이 권장됨
Last updated on