springBoot 整合log4j2
来源:互联网 发布:顺治 多尔衮 知乎 编辑:程序博客网 时间:2024/05/16 06:10
因为项目中之前没有引入日志插件,所以我就加了一下。
我是看着这篇博客装的,其中也进行了一些修改。十分感谢
取出springBoot自带的默认日志控件,添加log4j2日志控件
pom文件中添加一下代码<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>1.4.2.RELEASE</version><exclusions><!-- 去掉默认配置 --> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion></exclusions></dependency><dependency> <!-- 引入log4j2依赖 –>--> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> <version>1.4.2.RELEASE</version></dependency>
2.在application.properties文件夹下,添加日志配置
logging.config=classpath:log4j2.xml
3.在src/main/resource下新建log4j2.xml,加入对应的配置。(这个参照其他的就OK了)
<?xml version="1.0" encoding="UTF-8"?><Configuration status="WARN" monitorInterval="30"> <Properties> <Property name="patternLayout">[%d{yyyy-MM-dd'T'HH:mm:ss,SSSXXX}] %-5p [%t] %c{2} - %m%n</Property> <Property name="logdir">D:/tmp/</Property> </Properties> <Appenders> //这是定义consle输出的 <Console name="CONSOLE" target="SYSTEM_OUT"> <PatternLayout pattern="${patternLayout}"/> </Console> <Async name="ASYNC"> <AppenderRef ref="CONSOLE"/> </Async> //RollingFileAppender,循环写入文件。达到设置的大小,就把格式变成filePattern定义的 //定义debug的输出形式,循环写成文件 <RollingFile name="DebugLogger" fileName="${logdir}/logs/debug/log.log" filePattern="${logdir}/logs/debug/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-log-%i.log" append="true"> <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="${patternLayout}"/> <!--<SizeBasedTriggeringPolicy size="1MB"/>--> <DefaultRolloverStrategy max="10"/> <Policies> <!--根据时间来滚动--> <!--<TimeBasedTriggeringPolicy modulate="true" interval="1"/>--> <!--根据文件大小来滚动--> <SizeBasedTriggeringPolicy size="10 MB"/> </Policies> </RollingFile> <RollingFile name="InfoLogger" fileName="${logdir}/logs/info/log.log" filePattern="${logdir}/logs/info/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-log-%i.log" append="true"> <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="${patternLayout}"/> <!--<SizeBasedTriggeringPolicy size="1MB"/>--> <DefaultRolloverStrategy max="10"/> <Policies> <!--根据时间来滚动--> <!--<TimeBasedTriggeringPolicy modulate="true" interval="1"/>--> <!--根据文件大小来滚动--> <SizeBasedTriggeringPolicy size="10 MB"/> </Policies> </RollingFile> <!--add by yu--> <RollingFile name="importDataLog" fileName="${logdir}/logs/priceMonitor/log.log" filePattern="${logdir}/logs/priceMonitor/log-%i.log" append="true"> <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="${patternLayout}"/> <!--<SizeBasedTriggeringPolicy size="1MB"/>--> <DefaultRolloverStrategy max="10"/> <Policies> <!--根据时间来滚动--> <!--<TimeBasedTriggeringPolicy modulate="true" interval="1"/>--> <!--根据文件大小来滚动--> <SizeBasedTriggeringPolicy size="20 MB"/> </Policies> </RollingFile> <!--end--> <RollingFile name="WarnLogger" fileName="${logdir}/logs/warn/log.log" filePattern="${logdir}/logs/warn/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-log-%i.log" append="true"> <ThresholdFilter level="warn" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="${patternLayout}"/> <!--<SizeBasedTriggeringPolicy size="1MB"/>--> <DefaultRolloverStrategy max="10"/> <Policies> <!--根据时间来滚动--> <!--<TimeBasedTriggeringPolicy modulate="true" interval="1"/>--> <!--根据文件大小来滚动--> <SizeBasedTriggeringPolicy size="10 MB"/> </Policies> </RollingFile> <RollingFile name="ErrorLogger" fileName="${logdir}/logs/error/log.log" filePattern="${logdir}/logs/error/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-log-%i.log" append="true"> <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="${patternLayout}"/> <!--<SizeBasedTriggeringPolicy size="1MB"/>--> <DefaultRolloverStrategy max="10"/> <Policies> <!--根据时间来滚动--> <!--<TimeBasedTriggeringPolicy modulate="true" interval="1"/>--> <!--根据文件大小来滚动--> <SizeBasedTriggeringPolicy size="10 MB"/> </Policies> </RollingFile></Appenders><loggers> <root level="info"> <AppenderRef ref="ASYNC"/> <appender-ref ref="DebugLogger"/> <appender-ref ref="InfoLogger"/> <appender-ref ref="WarnLogger"/> <appender-ref ref="ErrorLogger"/> </root> <logger name="com.inter3i.monitor.component.ScheduleJob" level="info" additivity="false"> <appender-ref ref="importDataLog"/> </logger> <logger name="com.inter3i.monitor.business.impl.PriceTrendServicelmpl" level="info" additivity="false"> <appender-ref ref="importDataLog"/> </logger> <logger name="com.inter3i.monitor.business.impl.PriceChangeRankServiceImpl" level="info" additivity="false"> <appender-ref ref="importDataLog"/> </logger> //如果同时满足这个和上面的,additivity属性是否重复输出。 //appender-ref ref指定上面定义的name <logger name="com.inter3i.monitor.business.impl.BrandAvgChangeServiceImpl" level="debug" additivity="false"> <appender-ref ref="importDataLog"/> </logger></loggers>
4.程序里面直接引入
private static final Logger logger = LoggerFactory.getLogger(ScheduleJob.class); 方法里面用这个就ok了。 logger.info("this is info ");
5.java的配置真是烦人。
阅读全文
0 0
- springBoot 整合log4j2
- springboot log4j2
- springboot log4j2配置
- SpringBoot - 日志集成 Log4j2
- springboot日志体系---log4j2
- SpringBoot配置使用Log4j2
- Log4j2 与 SpringMVC 整合
- SpringBoot学习(4) 配置log4j2
- SpringBoot 配置log4j2日志输出
- SpringBoot Log4j2日志分级输出
- log4j2 与 spring mvc整合
- log4j2 与 spring mvc整合
- log4j2 与 spring mvc整合
- log4j2 与 spring mvc整合
- slf4j+log4j2的整合配置
- SpringBoot应用与原理之集成Log4j2
- springboot log4j2配置,使用gradle构建
- SpringBoot学习:SpringBoot整合mybatis
- ORACLE储存过程合并数组
- 基于邻接链表的图的广度优先搜索Java实现
- webserver调用
- 国外牛人总结的机器学习领域的框架、库以及软件
- 复数类 Complex
- springBoot 整合log4j2
- 16_ARM汇编自学笔记指令系统之协处理器指令
- C++中关于DWORD
- C#http访问提示Insufficient permissions for setting the configuration section 'defaultProxy'
- poj 3069 Saruman's Army
- C++
- jsTree +asp.net树形结构,取值、赋值、全选
- springboot开启热部署之Idea&Gradle
- JWT(JSON WEB TOKEN)概要