더북(TheBook)

다른 방법으로 spring.profiles.active 프로퍼티를 application.yml에 추가하여 활성화할 수도 있다.


spring:
    profiles:
        active: production

또 다른 방법은 환경 변수나 application.properties에 설정(spring.profiles.active=production)하거나 3.2절의 첫 부분에서 설명한 다른 방법을 사용하는 것이다.

하지만 스프링 부트는 많은 구성을 자동으로 구성하므로 단순히 @Profile 애너테이션을 붙이려고 명시적으로 구성을 작성하는 것은 오히려 불편할 수 있다. 다행히 스프링 부트는 application.properties와 application.yml에 설정한 프로퍼티에도 프로파일을 지원한다.

프로파일된 프로퍼티를 설명하려고 개발 단계와 출시 단계에서 다른 로깅 구성을 원한다고 가정하자. 출시 단계에서는 WARN 레벨 이상의 로그에만 관심이 있으며, 해당 로그를 파일에 기록하려고 한다. 하지만 개발 단계에서는 DEBUG 레벨 이상의 로그를 콘솔에서만 본다고 하자.

두 가지를 모두 만족하려면 각 환경에 맞는 별도의 구성을 생성하면 된다. 하지만 프로퍼티 파일과 YAML 파일 중 어떤 것을 사용하느냐에 따라 구성 방법은 다르다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.