티스토리 뷰
현재 프로젝트 로그라이브러리로 log4j2를 사용하고있다. 그러다가 사용하게된 라이브러리가 있는데 이 라이브러리는 log4j 를 사용하고있었다. 의존성 전이에 따라 큰 문제없이 프로젝트 구동은 되지만 워닝 로그가 뜨게된다.
log4j:WARN No appenders could be found for logger (org.apache.activemq.util.ThreadPoolUtils).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
이런로그가 뜨게되는데 무시해도 돌아가는덴 지장없지만... 없애보자.
1. log4j 설정
일단 저 워닝 로그가 뜨는 이유는 log4j 설정이 없기때문이다. log4j 설정을 추가해주면 사라지게된다. 자바코드로 설정한다면 아주 간단하게 1줄만 넣어주면 된다.
BasicConfigurator.configure();
기본설정으로 설정하겠다는 의미인데 1번만 설정해주면 되니 스프링을 사용한다면 빈 설정같은곳에 넣어주면 되겠다.
해결은 됐겠다마는 저 설정은 설정을 공유하는게 아니고 log4j2와 log4j 설정이 양립하게되는 설정이다. 즉 로그 찍히는걸보면 서로 다른 포맷의 로그들이 찍히게된다. 이걸 원하는 사람은 많지 않을것이다.
2. log4j2 설정 공유
사실 정말 원하는 해결법은 이쪽일것이다. 이부분에도 크게 어려운점은 없고 몇가지 의존성들을 추가해주면 된다.
일단 log4j 를 사용하는 라이브러리에서 log4j 의존성을 가져오지못하게 막자. 메이븐 사용중이라면 maven exclude 같은 키워드로 검색하면 메이븐 문법이 나올것이니 그거까진 다루지않는다.
exclude(module: 'log4j')
exclude(module: 'slf4j-log4j12')
그리고 아래 의존성들을 추가해주자.
compile("org.apache.logging.log4j:log4j-api:2.10.0")
compile("org.apache.logging.log4j:log4j-core:2.10.0")
compile("org.apache.logging.log4j:log4j-slf4j-impl:2.10.0")
compile("org.apache.logging.log4j:log4j-1.2-api:2.10.0")
이것들만 추가해주면 끝이다. log4j에서 log4j2 설정을 사용하도록 bridge 관련 클래스들을 제공해주는데 그것들이 저 안에 들어있는것같다. 어차피 이제 log4j를 내가 쓸일은 없을것같으니 크게 궁금하지도않고 그냥 해결돼서 넘어간다.
참고
'Java' 카테고리의 다른 글
lombok 1.16.20 브레이킹 체인지 (0) | 2018.03.02 |
---|---|
Lombok 1.16.16에서 @Builder 애노테이션 변경 (3) | 2018.02.20 |
Jackson 2.9.1~2.9.3 @JsonProperty 버그 (0) | 2018.01.13 |
Jackson 2.9 에 추가된 @JsonAlias 애노테이션 (0) | 2018.01.13 |
역어셈블리 (0) | 2018.01.07 |
- Total
- Today
- Yesterday
- 정규표현식
- spring cloud
- Spring
- Git
- toby
- clean code
- OOP
- EffectiveJava
- http
- mariadb
- TEST
- DesignPattern
- MySQL
- backend개발환경
- generics
- programming
- JavaScript Core
- javascript
- go-core
- Design Pattern
- db
- java8
- JPA
- frontcode
- frontend개발환경
- servlet
- java
- Jackson
- Kotlin
- code
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |