Spring boot 로그를 관리하다 보면, 로컬/개발/테스트/운영 마다 로그레벨을 다르게 해야할 필요가 있을것이다.
이때, 여러가지 방식이 있을 수 있지만 서버의 환경변수(또는 ConfigMap) 로 로그를 관리할 수 있는 방법을 소개한다.
1. Spring boot main class에 로그레벨이 명시되어있는 환경변수를 가져오고 Property에 set 한다.
public class MainApplication {
System.setProperty("loglevel" , System.getenv("LOG_LEVEL"));
MainApplication.run(MainApplication.class , args);
}
2. logback.xml 의 로그 레벨을 "${Property변수}" 로 동적 관리 설정을 한다.
<root level ="${logLevel}" additivity="false">
<appender-ref ref="CONSOLE"/>
</root>
이 두개를 응용하면, 환경별 다른 로그레벨로 운영이 가능할것이다.
'Springboot' 카테고리의 다른 글
[Springboot] Failed to configure a DataSource 에러 뜰때 (0) | 2022.08.03 |
---|