이 글에서는 주로 spring boot에서 log4j를 소개하는 방법과 함께 필요한 친구들이 참고할 수 있는 몇 가지 기본적인 사용법을 소개합니다.
머리말
Spring Boot는 모든 내부 로그에 Commons Logging을 사용하지만 기본 구성에서는 Java Util Logging, Log4J, Log4J2와 같은 공통 로그에 대한 지원도 제공합니다. 그리고 로그백. 각 로거는 콘솔이나 파일을 사용하여 로그 내용을 출력하도록 구성할 수 있습니다. 이번 글에서는 Spring Boot에서 log4j를 활용하여 로그를 기록하는 방법을 주로 소개합니다. 관심 있는 분들은 오셔서 함께 배워보세요.
log4j 종속성 소개
Spring Boot 프로젝트를 생성할 때 spring-boot-starter-logging이 포함된 spring-boot-starter를 도입했는데, 이 종속성 내용은
은 Spring Boot의 기본 로깅 프레임워크인 Logback이므로 log4j를 도입하기 전에 다음과 같이 이 패키지의 종속성을 제외하고 log4j의 종속성을 도입해야 합니다.
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j</artifactId> </dependency>
구성 log4j.properties
log4j 종속성을 도입한 후 src/main/resources 디렉터리에 log4j.properties 구성 파일만 추가하면 애플리케이션 로그 구성 및 사용이 시작됩니다.
콘솔 출력
다음 구성을 통해 루트 로그의 출력 수준을 INFO로 설정하고 어펜더는 stdout을 콘솔에 출력합니다
# LOG4J配置 log4j.rootCategory=INFO, stdout # 控制台输出 log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
파일로 출력
개발환경에서는 문제없이 콘솔로 출력만 하는데, 프로덕션 환경이나 테스트 환경에서는 원인추적을 용이하게 하기 위해 로그 내용이 남아있을 수 있습니다. 문제의.
다음 어펜더 콘텐츠를 추가하여 매일 다른 파일로 출력할 수 있습니다. 또한 log4j.rootCategory에 file이라는 어펜더를 추가해야 합니다.
이렇게 하면 루트 로그를 log/ 파일에 all.log가 있습니다.
# log4j.rootCategory=INFO, stdout, file # root日志输出 log4j.appender.file=org.apache.log4j.DailyRollingFileAppender log4j.appender.file.file=logs/all.log log4j.appender.file.DatePattern='.'yyyy-MM-dd log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
분류 출력
1. 다양한 패키지에 따라 출력이 가능합니다. log/my.log에 출력하는 어펜더를 정의하고, com.didispace 패키지 아래의 로그 레벨
을 DEBUG 레벨로 설정하면 어펜더는 log/my.log에 출력하는 didifile이라는 어펜더로 설정됩니다.
# com.juzi包下的日志配置 log4j.category.com.juzi=DEBUG, didifile # com.didispace下的日志输出 log4j.appender.didifile=org.apache.log4j.DailyRollingFileAppender log4j.appender.didifile.file=logs/my.log log4j.appender.didifile.DatePattern='.'yyyy-MM-dd log4j.appender.didifile.layout=org.apache.log4j.PatternLayout log4j.appender.didifile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L ---- %m%n
는 ERROR 수준을 특정 로그 파일에 출력하는 등 다양한 수준을 분류할 수 있습니다. 구체적인 구성은 다음과 같습니다.
og4j.logger.error=errorfile # error日志输出 log4j.appender.errorfile=org.apache.log4j.DailyRollingFileAppender log4j.appender.errorfile.file=logs/error.log log4j.appender.errorfile.DatePattern='.'yyyy-MM-dd log4j.appender.errorfile.Threshold = ERROR log4j.appender.errorfile.layout=org.apache.log4j.PatternLayout log4j.appender.errorfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
이상은 Spring Boot에서 log4j를 사용하여 로그를 기록하는 방법에 대한 자세한 설명입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!
위 내용은 Spring Boot에서 로그를 기록하기 위해 log4j를 사용하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!