概述
依赖
需要排除SpringBoot自带的logging包
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</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-log4j2</artifactId> <version>2.6.3</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
Xml文件
<?xml version="1.0" encoding="UTF-8"?> <!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL --> <!--Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出--> <!--monitorInterval:Log4j能够自动检测修改配置 文件和重新配置本身,设置间隔秒数--> <Configuration status="WARN" monitorInterval="30"> <!--全局属性--> <Properties> <Property name="APP_NAME">userService-log4j2</Property> <Property name="LOG_FILE_PATH">E:/work/logs/${APP_NAME}</Property> <Property name="PATTERN_FORMAT">%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n</Property> </Properties> <Appenders> <!--输出到控制台--> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="${PATTERN_FORMAT}"/> </Console> <!--输出到文件 用来定义超过指定大小自动删除旧的创建新的的Appender.--> <RollingFile name="RollingInfoFile" fileName="${LOG_FILE_PATH}/info.log" filePattern="${LOG_FILE_PATH}/$${date:yyyyMM}/info-%d{yyyyMMdd}-%i.log.gz"> <!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)--> <Filters> <ThresholdFilter level="warn" onMatch="DENY" onMismatch="NEUTRAL"/> <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/> </Filters> <PatternLayout> <pattern>${PATTERN_FORMAT}</pattern> </PatternLayout> <Policies> <!-- rollover on startup, daily and when the file reaches 10 MegaBytes --> <OnStartupTriggeringPolicy/> <SizeBasedTriggeringPolicy size="100 MB"/> <TimeBasedTriggeringPolicy/> </Policies> </RollingFile> <!--输出警告日志到文件--> <RollingFile name="RollingWarnFile" fileName="${LOG_FILE_PATH}/warn.log" filePattern="${LOG_FILE_PATH}/$${date:yyyyMM}/warn-%d{yyyyMMdd}-%i.log.gz"> <!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)--> <Filters> <ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/> <ThresholdFilter level="warn" onMatch="ACCEPT" onMismatch="DENY"/> </Filters> <PatternLayout> <pattern>${PATTERN_FORMAT}</pattern> </PatternLayout> <Policies> <!-- rollover on startup, daily and when the file reaches 10 MegaBytes --> <OnStartupTriggeringPolicy/> <SizeBasedTriggeringPolicy size="100 MB"/> <TimeBasedTriggeringPolicy/> </Policies> </RollingFile> <!--输出错误日志到文件--> <RollingFile name="RollingErrorFile" fileName="${LOG_FILE_PATH}/error.log" filePattern="${LOG_FILE_PATH}/$${date:yyyyMM}/error-%d{yyyyMMdd}-%i.log.gz"> <!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)--> <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout> <pattern>${PATTERN_FORMAT}</pattern> </PatternLayout> <Policies> <!-- rollover on startup, daily and when the file reaches 10 MegaBytes --> <OnStartupTriggeringPolicy/> <SizeBasedTriggeringPolicy size="100 MB"/> <TimeBasedTriggeringPolicy/> </Policies> </RollingFile> </Appenders> <Loggers> <!--过滤掉spring和mybatis的一些无用的DEBUG信息--> <Logger name="org.springframework" level="INFO"/> <Logger name="org.mybatis" level="INFO"/> <!-- LOG "com.luis*" at TRACE level --> <Logger name="com.luis" level="INFO"/> <!-- LOG everything at INFO level --> <Root level="ALL"> <AppenderRef ref="Console"/> <AppenderRef ref="RollingInfoFile"/> <AppenderRef ref="RollingWarnFile"/> <AppenderRef ref="RollingErrorFile"/> </Root> </Loggers> </Configuration>
FILE_PATH(定义文件存放路径)
xml放在resources下
使用@Log4j2注解
最后
以上就是自信小鸭子为你收集整理的Springboot集成log4j2.xml的全部内容,希望文章能够帮你解决Springboot集成log4j2.xml所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复