250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- java
- update
- Effective Java 3/e
- mysql 5.5
- try catch
- git
- Regular expression
- npm
- regex
- Node
- upgrade
- spring cloud
- nodejs
- 퀵소트
- log4j2
- migration
- log_bin
- Express
- MySQL
- JavaScript
- Chunk
- eslint
- REACTJS
- REACT
- Effective Java
- 정규표현식
- expire_logs_days
- Spring Batch
- current_date
- spring
Archives
- Today
- Total
내 세상
[Java] Log4j 1.x to Log4j 2 Migration - Converting to the Log4j 2 API 본문
Language/Java
[Java] Log4j 1.x to Log4j 2 Migration - Converting to the Log4j 2 API
sga8 2021. 12. 14. 11:05728x90
반응형
https://logging.apache.org/log4j/2.x/manual/migration.html
Converting to the Log4j 2 API (빨강색: 버전 1 관련, 파랑색: 버전 2 관련)
대체로 Log4j 1.x API를 Log4j2로 변경하는 것은 꽤나 쉬울 것이다. 많은 Log Statement에 수정이 필요하진 않다. 그러나, 아래 변경점에 대해서는 반드시 수정이 필요하다.
- 버전 1의 main package는 org.apache.log4j 이고, 버전 2의 main package는 org.apache.logging.log4j 이다.
- org.apache.log4j.Logger.getLogger()는 org.apache.log4j.LogManager.getLogger()로 변경해야한다.
- org.apache.log4j.Logger.getRootLogger() 또는 org.apache.log4j.LogManager.getRootLogger()는 org.apache.logging.log4j.LogManager.getRootLogger()로 변경해야한다.
- LoggerFactory를 사용하는 org.apache.log4j.Logger.getLogger()는 org.apache.log4j.spi.LoggerFactory를 제거해야한다. 그리고 Log4j 2의 확장 메커니즘 중 하나를 사용해야한다.
- org.apache.log4j.Logger.getEffectiveLevel()은 org.apache.logging.log4j.Logger.getLevel()로 변경해야한다.
- org.apache.log4j.LogManager.shutdown()을 삭제해야한다. 버전 2에서는 Log4j Core가 자동으로 JVM Shutdown hook을 진행하기 때문에 삭제되어야 한다.
- org.apache.log4j.Logger.setLevel() 또는 유사한 함수는 지원되지 않아 삭제해야 한다. 버전 2에서 동등한 기능이 org.apache.logging.log4j.core.config.Configurator.setLevel()로 제공된다. 그러나 Log4j 2 내부의 변경 사항에 취약할 수 있다.
- 적절하게 사용하기 위해선 applications이 String concatenation 대신에 parameterized messages를 사용하도록 변경해야 한다.
- org.apache.log4j.MDC 또는 org.apache.log4j.NDC는 thread context로 대체되었다.
728x90
반응형
'Language > Java' 카테고리의 다른 글
[Java] 현재 시간을 yyyyMMddHHmmss String으로 추출하는 코드 (0) | 2022.01.04 |
---|---|
[Java] Log4j 1.x to Log4j 2 Migration - Configuring Log4j 2 (0) | 2021.12.14 |
[Java] Effective Java 3/e - Item 12) toString을 항상 재정의하라 (0) | 2021.12.06 |
[Java] Effective Java 3/e - Item 9) try-finally 보다는 try-with-resoucres를 사용하라 (0) | 2021.12.03 |
[Java] Effective Java 3/E - 1장 들어가기 (0) | 2021.12.01 |