slf4j +log4j2 日志 配置
来源:互联网 发布:淘宝司法拍卖平台 编辑:程序博客网 时间:2024/04/29 20:00
日志基于Sping MVC、MyBatis、Maven配置
- 依赖jar包配置
<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>2.8.2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.8.2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-web</artifactId> <version>2.8.2</version> </dependency> <dependency> <groupId>com.lmax</groupId> <artifactId>disruptor</artifactId> <version>3.3.6</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>1.7.25</version> </dependency>
2 、web.xml 配置
<context-param> <param-name>isLog4jAutoInitializationDisabled</param-name> <param-value>true</param-value> </context-param> <!-- 默认就会找这个文件,不需要额外配置引用 <context-param> <param-name>log4jConfiguration</param-name> <param-value>classpath:/log4j2.xml</param-value> </context-param> --> <listener> <listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class> </listener> <filter> <filter-name>log4jServletFilter</filter-name> <filter-class>org.apache.logging.log4j.web.Log4jServletFilter</filter-class> </filter> <filter-mapping> <filter-name>log4jServletFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> <dispatcher>INCLUDE</dispatcher> <dispatcher>ERROR</dispatcher> </filter-mapping>
3、mybatis-config.xml 配置文件
在settings中加入该配置
<setting name="logImpl" value="LOG4J2" />
4、spring-mybatis.xml 配置
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSourceHikari" /> <property name="configLocation" value="classpath:mybatis-config.xml"></property> <!-- 自动扫描mapping.xml文件 --> <property name="mapperLocations" value="classpath:com/test/dao/*.xml"></property> </bean>
5、log4j2.xml 配置
<?xml version="1.0" encoding="utf-8" ?><Configuration status="info" monitorInterval="1800"> <properties> <property name="LOG_HOME">F:\logs</property> <property name="ERROR_LOG_FILE_NAME">runlog</property> </properties> <Appenders> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d %-5p (%F:%L) - %m%n" /> </Console> <RollingRandomAccessFile name="FileLog" fileName="${LOG_HOME}/${ERROR_LOG_FILE_NAME}.log" filePattern="${LOG_HOME}/${ERROR_LOG_FILE_NAME}.log.%d{yyyy-MM-dd}.gz"> <PatternLayout pattern="%d %-5p (%F:%L) - %m%n"/> <Policies> <TimeBasedTriggeringPolicy/> <SizeBasedTriggeringPolicy size="20MB"/> </Policies> <DefaultRolloverStrategy max="20"/> </RollingRandomAccessFile> </Appenders> <Loggers> <logger name="org.springframework.core" level="info"/> <logger name="org.springframework.beans" level="info"/> <logger name="org.springframework.context" level="info"/> <logger name="org.springframework.web" level="info"/> <!-- 将业务dao接口填写进去,并用控制台输出即可 --> <logger name="com.test.dao" level="trace" additivity="false"> <appender-ref ref="Console"/> </logger> <root level="info" includeLocation="true"> <appender-ref ref="Console"/> </root> </Loggers></Configuration>
基本的配置就结束了。
在Loggers的root 中设置appender-ref ,可以选择在控制台输出日志还是写入日志文件。
6、初始化日志对象
private static final Logger logger = LoggerFactory.getLogger(DissServiceImpl.class); @Autowired private UserMapper UserMapper; @Override public List<User> gerUsers() { logger.info("test runlog"); return UserMapper.gerUsers(); }
7、测试结果
2017-09-24 15:17:26,303 INFO (DissServiceImpl.java:22) - test runlog2017-09-24 15:17:26,351 DEBUG (BaseJdbcLogger.java:145) - ==> Preparing: SELECT * FROM USER 2017-09-24 15:17:26,381 DEBUG (BaseJdbcLogger.java:145) - ==> Parameters: 2017-09-24 15:17:26,403 TRACE (BaseJdbcLogger.java:151) - <== Columns: ID, username, sex2017-09-24 15:17:26,403 TRACE (BaseJdbcLogger.java:151) - <== Row: 1, 王富华, 男2017-09-24 15:17:26,409 TRACE (BaseJdbcLogger.java:151) - <== Row: 2, 王富贵, 男2017-09-24 15:17:26,410 TRACE (BaseJdbcLogger.java:151) - <== Row: 3, 王贵, qw2017-09-24 15:17:26,410 TRACE (BaseJdbcLogger.java:151) - <== Row: 4, XXX, A2017-09-24 15:17:26,411 TRACE (BaseJdbcLogger.java:151) - <== Row: 5, eee, q2017-09-24 15:17:26,412 DEBUG (BaseJdbcLogger.java:145) - <== Total: 5
修改 appender-ref=FileLog
阅读全文
0 0
- slf4j +log4j2 日志 配置
- 日志学习:SLF4J & Log4J2
- 日志---slf4j和log4j2
- 项目中实际使用的日志配置log4j2 + slf4j
- 使用slf4j + Log4j2构建日志
- spring4 + log4j2+ slf4j的配置
- slf4j+log4j2的整合配置
- Log4j,Log4j2,logback,slf4j日志学习
- Log4j,Log4j2,logback,slf4j日志学习
- log4j2配置mybatis日志
- log4j2 日志配置
- log4j2日志配置
- log4j2 日志配置实战
- Log4j2日志配置
- SpringMVC使用maven配置SLF4J和Log4J2
- SLF4J+Log4j 日志配置
- 日志配置ogback slf4j
- slf4j绑定log4j2日志系统的过程(源码分析)
- 【Java】结束线程
- 深拷贝与浅拷贝问题
- python对象编程总结(一)
- Python函数式编程之map/reduce/filter进阶
- 【模板】阶乘分解
- slf4j +log4j2 日志 配置
- Html学习笔记3:文本元素的使用和超链接
- Java中static关键字用法总结
- 使用instsrv.exe+srvany.exe将应用程序安装为windows服务的方法
- [Meta http-equiv](http://kinglyhum.iteye.com/blog/827807)
- Leetcode之Subsets II 问题
- 开始学习python爬虫,xml.dom模块解析xml
- 实现第一个例子 来自google的数字识别
- linux下xgboost、python版本、tensorflow_GPU的一些小事情