Logging ✅

<aside> 💡 로그 전략?

로그 전략은 어떤 로그어떤 방식으로 남길지, 그리고 그 로그를 어떻게 얼마동안 관리할지 등의 전략이다.

</aside>

어플리케이션의 모든 상황을 로그로 남기면 로그 파일은 빠른 속도로 커질 것이고 디스크 용량의 문제를 야기할 수 있다. 그러므로 중요한 로그만 남기는것이 좋다.

로그 레벨 기준

로깅에 쓰일정보 예시

에러 레벨은 debug, warn, error

private void logDebug(HttpServletRequest request, Exception e) {
	log.debug("[EXCEPTION] REQUEST_URI       -----> [{}]", request.getRequestURI());
	log.debug("[EXCEPTION] HTTP_METHOD_TYPE  -----> [{}]", request.getMethod());
	log.debug("[EXCEPTION] EXCEPTION_TYPE    -----> [{}]", e.getClass().getSimpleName());
	log.debug("[EXCEPTION] EXCEPTION_MESSAGE -----> [{}]", MessageUtil.getMessage(e.getMessage()));
	log.debug("[EXCEPTION]                   -----> ", e);
}

private void logWarn(Exception e) {
	log.warn("[EXCEPTION] EXCEPTION_TYPE    -----> [{}]", e.getClass().getSimpleName());
	log.warn("[EXCEPTION] EXCEPTION_MESSAGE -----> [{}]", MessageUtil.getMessage(e.getMessage()));
	log.warn("[EXCEPTION]                   -----> ", e);
}

private void logError(Exception e) {
	log.error("[EXCEPTION] EXCEPTION_TYPE    -----> [{}]", e.getClass().getSimpleName());
	log.error("[EXCEPTION] EXCEPTION_MESSAGE -----> [{}]", MessageUtil.getMessage(e.getMessage()));
	log.error("[EXCEPTION]                   -----> ", e);
}