728x90
aop로 logging을 할때 단순히 로그만 콘솔에 띄우지않고 파일로도 저장이 가능하다.
파일로 저장하는 설정을 공유해보겠다.
환경: 전자정부 프레임워크 3.10 : spring 4.3.25
1. 의존성 추가
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.13.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.13.0</version>
</dependency>
</dependencies>
# pom.xml 에 의존성을 추가해준다
2. log4j2.xml 작성
<?xml version="1.0" encoding="UTF-8"?>
<configuration status="DEBUG">
<Appenders>
<!-- 콜솔 -->
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{yyyy-MM-dd hh:mm:ss} %5p [%c] %m%n"/>
</Console>
<!-- 파일 -->
<RollingFile name ="RollingFile">
<FileName>C:/log/mylog.txt</FileName>
<FilePattern>C:/log/%d{yyyy-MM-dd-hh-mm}/mylog.zip</FilePattern>
<PatternLayout>
<Pattern>%d{yyyy-MM-dd HH:mm:ss} %5p [%c] %m%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval = "1" modulate = "true"/>
</Policies>
</RollingFile>
<RollingFile name ="RollingFileError">
<FileName>C:/log/mylog_error.txt</FileName>
<FilePattern>C:/log/%d{yyyy-MM-dd-hh-mm}/mylog_error.zip</FilePattern>
<PatternLayout>
<Pattern>%d{yyyy-MM-dd HH:mm:ss} %5p [%c] %m%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval = "1" modulate = "true"/>
</Policies>
</RollingFile>
</Appenders>
<loggers>
<root level="debug" additivity="true">
<AppenderRef ref="console"/>
<AppenderRef ref="RollingFile"/>
<AppenderRef ref="RollingFileError" level = "ERROR"/>
</root>
</loggers>
</configuration>
- 코드설명
Rolling File 태그를 사용.
FileName은 로그가 찍히게 될 파일경로,
FilePattern은 파일이 말릴때의 패턴 >> 날짜/mylog.zip형태로 저장된다.
Pattern은 찍히는 로그형태
TimeBasedTriggeringPolicy는 Rolling 조건을 시간으로 설정하고, interval은 1분 간격으로 Rolling한다는 의미.
728x90
'Back > Spring' 카테고리의 다른 글
Maven 이란? 개념 , 특징 , 정의 (0) | 2023.02.02 |
---|---|
@Component , @Autowired ?? 사용하는 이유 (0) | 2022.09.01 |
Spring mvc 환경에서 aop : logging 적용예제 (0) | 2022.08.26 |
Spring Mvc 기반 api 예외처리 (0) | 2022.08.26 |
Spring ajax , list <map> 으로 데이터 넘기기 (0) | 2022.08.16 |