[자바, 로깅] log4j2 설정
- Log4j는 API와 코어 두 가지가 있다.
- API는 애플리케이션 인터페이스를 제공한다.
- 코어는 컴파일 시간이 아닌 런타임에만 필요하다.
build.gradle
dependencies {
implementation 'org.apache.logging.log4j:log4j-api:2.19.0'
implementation 'org.apache.logging.log4j:log4j-core:2.19.0'
}
- 버전 관리를 위해서는 다음 같이 작성한다. ```groovy plugins { id ‘io.spring.dependency-management’ version ‘1.0.1.RELEASE’ }
dependencyManagement { imports { mavenBom ‘org.apache.logging.log4j:log4j-bom:2.19.0’ } }
dependencies { implementation ‘org.apache.logging.log4j:log4j-api’ implementation ‘org.apache.logging.log4j:log4j-core’ }
### src/main/resources/log4j2.xml, src/test/resources/log4j2.xml
```xml
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
<Console name="ConsoleAppender" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
</Console>
<File name="FileAppender" fileName="application-${date:yyyyMMdd}.log" immediateFlush="false" append="true">
<PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
</File>
</Appenders>
<Loggers>
<Root level="debug">
<AppenderRef ref="ConsoleAppender" />
<AppenderRef ref="FileAppender" />
</Root>
</Loggers>
</Configuration>
Comments