로그란?
모든 행위와 이벤트 정보를 시간의 경과에 따라 기록한 데이터
시스템 상에서 "로그"를 생성하는 과정을 로깅(Logging)이라고 한다.
장점
예기치 못한 문제의 원인을 파악할 수 있고, 시스템 및 사용자의 동작 패턴 분석,
해킹의 비정상 동작 기록 감지 분석을 통해 통계화가 가능하다.
즉, 모든 것을 기록하고 분석하여 예측하게 해주는 장치
라이브러리 종류
Apache Commons logging
log4j : 가장 많이 사용됨
logback : log4j의 단점 개선 및 기능 추가한 로깅라이브러리
로그관리법!
사용법은 로깅 라이브러리 slf4j을 사용하여 내가 로그를 남길 클래스에 선언하고 메소드내에서 사용하면된다.
로그 레벨 : TRACE > DEBUG > INFO > WARN > ERROR >FATAL
TRACE : 모든 메세지를 표기하기 위한 정보
DEBUG : 프로그램 디버깅하기 위한 정보
INFO : 상태변경, 서비스 동작 상태를 위한 정보
WARN : 향후 잠재적으로 문제를 야기할 수 있는 정보
ERROR : 의도하지 않은 오류 발생 정보
FATAL : 시스템적으로 심각한 문제가 발생해서 어플리케이션 작동이 불가능한 정보
System.out 이 있는데 logger을 써야하는 이유는?
system.out은 에러발생시 추적할 수 있는 최소한의 정보가 없다.
반면 logger는 시스템 콘솔에만 출력하지않고, 파일, 네트워크 등 별도의 위치에 남길 수 있다.
특정 파일로 남길때는 일별, 특정 용량에 따라 분할하는것도 가능하다.
참고
'Back End > JAVA' 카테고리의 다른 글
[JAVA] isEmpty() 와 isBlank() (0) | 2022.11.28 |
---|---|
[JAVA] 문자열 치환(Replace, ReplaceAll, ReplaceFirst) (0) | 2022.11.28 |
[JAVA] Pattern 클래스 사용 (0) | 2022.11.25 |
[JAVA] 정규표현식 (0) | 2022.11.25 |