Spring Framework를 사용할 때 Log Management를 위해 Log4J를 쉽게 구성 할 수 있습니다.
Spring 5.0은 잠시 동안 출시되었으며 최근 봄 4.3에서 Spring 5.0으로 프로젝트를 업그레이드했습니다. Spring 4.3에서 사용하는 클래스 org.springframework.web.util.log4jconfiglistener class org.springframework.log4jconfiglistener log4j는 Spring 5.0 버전에서 삭제되었으며 log4j 버전 1.x는 더 이상 업데이트되지 않습니다. log4j-1.x를 log4j-2.x로 업그레이드했습니다
먼저 Log4J 2의 3 개의 JAR 패키지를 소개합니다
프로젝트에서 web.xml 파일을 추가하십시오. 이 설정은 $ {web : rootdir}을 사용하여 로그 파일을 웹 디렉토리로 출력 할 수 있습니다.
<CERTXT-PARAM> <Param-Name> log4jcontextName </param-name> <param- value> myApplication </param-value> </context-param>
Log4J 2는 JSON, YAML, Properties 및 XML의 네 가지 구성 방법을 지원합니다. 기존 규칙에 따라 Log4J2를 구성하기 위해 속성을 사용합니다.
프로젝트의 SRC 디렉토리에 log4j2.properties 파일을 추가하십시오. Spring 5.0은 기본적으로 파일을 자동으로로드합니다
# log4J2 내부 로그 레벨을 설정, 유효한 값 : 추적, 디버그, 정보, 경고, 오류, 치명적입니다. log4J 자체의 이벤트에만 유효하며 설정할 수 없습니다. 추적으로 설정하면 log4j2 상태 = Fatal# configuration name = propertiesconfigappenders = console, i# 콘솔 유형 로그 출력 소스 appender.console.type = console# 출력 소스 이름 appender.console.name.name = consolelog# 출력 템터. appender.console.layout.pattern = %m %nappender.console.target = system_out# 로그 출력 소스 appender.i.type = rollingfile# rollingfile# logger 구성 항목에서 호출 할 수 있습니다. $ {web : rootdir}/web-inf/log/info.log# 아카이브 로그 파일의 파일 이름 형식은`%d {yyyy-mm-dd-hh}````````web}/web-inf/log/inform '을 자동으로 채우는 데 사용됩니다. 레코드 출력 소스 레이아웃 유형 Appender.i.layout.type = PatternLayout# 스크롤 레코드 출력 템플릿 appender.i.layout.pattern = %-d {yyyy-mm-dd hh : mm : ss} [ %p] [ %c] %m %n# 파일 녹화 용 스토리지 정책을 지정합니다. 이 전략은 주로 주기적 로그 파일 스토리지 작업 appender.i.policies.type = 정책# 시간 appender.i.policies.time.time.time.time.time.time.time.time.time.time.time.time.time.time# 절단 간격은 1 개월입니다. 즉, 로그 아카이브는 하루에 한 번 수행됩니다. FilePattern에서 구성된 파일 변경 규칙이 $ {web : rootdir}/web-inf/log/info_%d {yyyy-mm-dd hh-mm}-%i 인 경우, 최소 시간 내성은 mm입니다. %d {yyyy-mm-dd hh}로 변경되면 최소 세분화는 시간이며, 파일은 2 시간마다 생성됩니다. appender.i.policies.time.interval = 1# 시간 범위를 수정하고 카운팅은 0에서 시작됩니다. modulate = true가되면 밀봉 시간이 경계로 0 점으로 오프셋이 계산됩니다. 예를 들어, modulate = true, interval = 4 시간, 그리고 로그가 마지막으로 차단 된 시간이 03:00이라고 가정하면 다음에 로그가 차단 된 시간은 04:00이고 후속 시간 appender.i.policies.time.modulate = true# log 파일 appender.i.policies.size.size의 볼륨을 기반으로 한 정책 트리거 정책# 크기, 트리거 롤링 appender.i.policies.size.size.size = 50m# 파일 스토리지 (rolloverStrategy)에 대한 정책 정책 (rolloverStrategy) appender.i.strategy.type.type = defaultrolloverStrategy# appender.i.strategy.max = 100# root high <: allod high <: allode high <: allod high <: allod high <: high <allod <root <) info <warn <ERROR <fatal <fatal <offrootlogger.level = debugrootlogger.appenderref.i.ref = inforollingfilerootlogger.appenderref.i.level = info# 이름 consolelog onlogcase rootlogger.appenderferf.consolelog.ref = constronop.consolelog. rootlogger.appenderref.consolelog.level = 디버그구성이 완료되면 클래스 테스트를 작성하십시오
import org.apache.logging.log4j.logmanager; import org.apache.logging.log4j.logger; public class testclass {public static final logger = logmanager.getLogger (testclass.class); public void test () {logger.info ( "정보 ..."); }}위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.