낭만 프로그래머
Java에서 slf4j + Log4j 2 사용하기 본문
Java에서 간단하게 쓸모있는 SLF4J를 사용하여 로그를 찍어보자
1. Maven으로 다운로드
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.10.0</version>
</dependency>
2. log4j2.xml 파일을 WEB-INF/classes에 들어갈 수 있도록 src 폴더에 생성
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Properties>
<Property name="logNm">izenimplant</Property>
<Property name="layoutPattern">%d [%t] %-5level %c(%M:%L) - %m%n</Property>
</Properties>
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="${layoutPattern}" />
</Console>
<RollingFile name="file" fileName="/log/${logNm}.log"
filePattern="/log/log_backup/${logNm}_%d{yyyy-MM-dd}_%i.log">
<PatternLayout pattern="${layoutPattern}" />
<Policies>
<SizeBasedTriggeringPolicy size="50MB" /> <!-- 10MB 용량이 초과시 DefaultRolloverStrategy 정책만큼 넘버링 -->
<TimeBasedTriggeringPolicy modulate="true"
interval="1" /><!-- 일별 로그 파일 생성 -->
</Policies>
<DefaultRolloverStrategy max="500"
fileIndex="min" /><!-- 롤링 파일 500개 까지 생성 -->
</RollingFile>
</Appenders>
<Loggers>
<!-- 기본 레벨은 debug -->
<Root level="debug" additivity="false">
<AppenderRef ref="console" />
<AppenderRef ref="file" />
</Root>
<!-- 다른 기본 패키지도 설정 제어 가능하다. -->
<logger name="com.ariulsoft.izen.homepage" level="debug"
additivity="false">
<AppenderRef ref="console" />
<AppenderRef ref="file" />
</logger>
</Loggers>
</Configuration>
3. 사용하기
private static Logger LOGGER = LoggerFactory.getLogger(CustomServletContext.class);
LOGGER.info("가장단순한 로그");
LOGGER.debug("디버거 로그")
'Java > Common' 카테고리의 다른 글
Java에서 Digester 를 사용하여 XML 파싱을 간단하게 사용하기 (0) | 2020.09.21 |
---|---|
Ajax 와 Servlet 을 이용한 파일 업로드 (0) | 2020.04.29 |
Java 에서 Singleton(싱글톤) 사용하기 (0) | 2020.04.06 |
Java(JSP/Servlet)에서 다국어(i18n) 사용하기 (0) | 2020.04.03 |
SMB 라이브러리를 이용하여 공유폴더(네트워크 드라이버) 접근하기 (0) | 2020.04.01 |