TIL(Today I Learned)
TIL 41th day
keepgoing
2021. 12. 1. 16:07
WAR VS JAR
- WAR는 외부에 배포할 때 사용,
- 내장 톰캣 x
- Jar는 내장 서버를 사용
- 내장 톰캣 o
- WebApp 경로 x
- Jar는 main/resource 경로에 index.html 즉, 웰컴페이지를 만들 수 있다.
log
- 스프링에서 로그의 기능을 통합해서 인터페이스로 제공하는 SLF4J 라이브러리가 있다.
- properties 설정을 통해 로그 기본 레벨 또는 하위 레벨을 설정할 수 있다.
- 로그의 기본 레벨은 info이다
- 로그의 레벨 순서는 TRACE > DEBUG > INFO > WARN > ERROR이다.
- 개발 서버는 debug 출력
- 운영 서버는 info 출력한다.
올바른 로그 사용법
- 권장 : log.info("loginfo={}", name);
- 비권장 : log.info("loginfo="+ name);와 같이 선언하는 방식은 리소스를 낭비시킨다.(+연산 때문)
로그 사용시 장점
- 쓰레드 정보, 클래스 이름 같은 부가 정보를 함께 볼 수 있고, 출력 모양을 조정할 수 있다.
- 개발 또는 운영에 적용할 로그 레벨을 조절할 수 있다.
- 파일이나 네트워크 등, 로그를 별도의 위치에 남길 수 있다.
- 파일로 남길 때는 일별, 특정 용량에 따라 로그를 분할하는것도 가능하다.
- 성능이 sout보다 좋다.(내부 버퍼링, 멀티 쓰레드 등), 때문에 실무에서는 로그를 사용한다.