프로젝트에 기능 구현을 제대로 하기전에 LogBack 관련 세팅을 먼저 하는게 좋을 것 같다는 피드백을 받았다. 그 이유를 생각해봤는데 프로젝트를 개발함에 있어서 log를 확인하고, 관리하는 것에 대한 장점을 최대한 누릴 수 있다고 생각했다.
그리고 log를 관리하는 것에 대한 장점이 무엇인지, 이런 log 관리를 어떻게 하는지, Log Back이란 무었인지 알아보았다.
프로젝트를 시작하기전에 스프링을 공부하면서 slf4j를 종종 사용한 경험이 있다. 로그를 찍는 용도로 사용한다고만 알고 있었기에 , Log Back 과 Slf4j의 관계를 잘 모르고 있었다.
알아본바로는 Sl4fj(Simple Logging Facade for Java)는 Facade 패턴으로 , 구현체의 종류와 상관없이 일관된 로깅 코드를 작성 할 수 있다. 그리고 이런 Slf4j의 구현체가 LogBack이다. Slf4j의 구현체는 LogBack 말고 log4j 등이 있다. LogBack은 SpringBoot의 기본 Logging framework로 사용되고 있다.

출처 : https://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/spring-boot-features.html#boot-features-logging
요약하자면 slf4j는 퍼사드 패턴을 통해 로깅을 해주는 것이고, 이를 구현한 LogBack, Log4j등이 있다.
스프링에서는 LogBack을 slf4j의 기본 구현체로 사용한다.