maven工程web项目使用log4j如何打印输出日志

1.首先准备工作:搭建工程什么的就不啰嗦了,相信大家都会的。直奔主题啦!
导入log4j相关的maven坐标

<!-- log4j日志相关坐标 --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.21</version></dependency><!-- 这里注意:如果是springBoot项目,不必再引入下边这个jar了,因为spring-boot-starter本身就已经引入这个jar了。以免造成jar包冲突 --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.7.21</version></dependency>

2.编写log4j配置文件:log4j.properties

#设置优先级别、以及输出源 stdout输出到控制台,D,F,E保存到文件
log4j.rootLogger = DEBUG,stdout,D,F,E
# 把日志信息输出到控制台
log4j.appender.stdout = org.apache.log4j.ConsoleAppender                   #添加到控制台
log4j.appender.stdout.Target = System.out                                  #方式为输出
log4j.appender.stdout.Threshold = DEBUG                                    #优先级为debug
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout              #信息布局方式为自定义
log4j.appender.stdout.layout.ConversionPattern = %d - %m %5p (%c:%L) %n        #自定义布局方式
# 把日志信息输出到文件debug.log
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ../logs/**项目名**/debug.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %d - %m %5p (%c:%L) %n
# 把日志信息输出到文件info.log
log4j.appender.F = org.apache.log4j.DailyRollingFileAppender
log4j.appender.F.File = ../logs/**项目名**/info.log
log4j.appender.F.Append = true
log4j.appender.F.Threshold = INFO
log4j.appender.F.layout = org.apache.log4j.PatternLayout
log4j.appender.F.layout.ConversionPattern = %d - %m (%c:%L)%n
# 把日志信息输出到文件error.log
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =../logs/**项目名**/error.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern =%d - %m (%c\:%L) %n#ibatis logger config
log4j.logger.com.ibatis=info
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=info
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=info
log4j.logger.java.sql.Connection=info
log4j.logger.java.sql.Statement=info
log4j.logger.java.sql.PreparedStatement=info

说明:01.日志文件的输出路径可以自定义。
02.log4j.properties是log4j默认加载的文件名,一般不需要修改。
03.日志输出优先级:从高到低依次为error,warn,info,debug,低级别的可以输出高级别的日志,如debug可以输出任何优先级的日志,但是info只能输出info,warn,error级别的日志。
4.stdout,D,F,E这两个有点类似于变量名,可以自定义名称,可以用这两个东西进行控制台或者文件的输出。
3.现场测试

编写测试类

@SpringBootTest
class ApplicationTests {Logger log = Logger.getLogger(ApplicationTests.class);@Testpublic void testOne() {// 记录debug级别的信息log.debug(">>This is debug message");// 记录info级别的信息log.info(">>This is info message");// 记录error级别的信息log.error(">>This is error message");}
}

运行结果

注意看日志文件的输出路径,看配置文件配置的路径:如 ../logs/**项目名**/debug.log
找到位置看是不是输出日志文件了。


debug.log

info.log

error.log

注意:看日志内容,是不是证实了**(低级别的可以输出高级别的日志,如debug可以输出任何优先级的日志)**

4.结尾
log4j的简单使用介绍就到这里了。这只是个入门,大家可以灵活运用,变着换花样来玩弄它了。

使用log4j如何打印输出到日志文件相关推荐

  1. Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式

    为什么80%的码农都做不了架构师?>>>    Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式,按天存放,解决catalina.out日志文件过大问题 ...

  2. log4j每天产生一日志文件

    #控制台#打印控制台日志log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender#输出HQL及参数到控制台#log4j.appender.CONS ...

  3. 解决log4j生成的log日志文件读写权限问题

    java web项目使用非管理员用户部署到Unix/Linux Weblogic服务器上时,由于weblogic 的$DOMAINS_HOME/bin/startWeblogic.sh文件中配置的um ...

  4. hadoop日志文件

    hadoop日志文件 @(HADOOP)[hadoop] hadoop日志文件 一master服务器上的日志 二slave服务器上的日志 三审计日志 四MR作业历史日志 hadoop存在多种日志文件, ...

  5. hadoop集群中的日志文件

    hadoop存在多种日志文件,其中master上的日志文件记录全面信息,包括slave上的jobtracker与datanode也会将错误信息写到master中.而slave中的日志主要记录完成的ta ...

  6. python读取日志统计ip_使用python脚本实现统计日志文件中的ip访问次数

    使用python脚本实现统计日志文件中的ip访问次数,注意此脚本只适用ip在每行开头的日志文件,需要的朋友可以参考下 适用的日志格式: 106.45.185.214 - - [06/Aug/2014: ...

  7. 解决Log4j日志文件输出到了前一天的备份文件里

    最近参与了一个项目,单台主机上布置了多个应用实例.为了后期维护和监控,需要将各个应用实例的部分关键日志汇总到一个文件里,同时自动备份前一天的日志,并带上日期.最开始只是配置了log4j.propert ...

  8. java log4j 文件_java log4j 日志文件

    开发中经常会用到log日志文件,根据业务需要可能不产生很大日志文件给维护和[排错带来了麻烦.所以我们希望能够每天或每个月产生一个日志文件,这样文件不至于过大. 或者根据日志文件大小来判断,超过规定大小 ...

  9. Log4j每天、每小时、每分钟定时生成日志文件

    转自:http://blog.csdn.net/vtopqx/article/details/8432862 在做项目中基本上都用到了日志log,那么自然就会遇到问题,比方说,日志太大了怎么办?日志很 ...

最新文章

  1. 面向对象编程(OOP)----BLUE大师JS课堂笔记(二)
  2. 企业上云需跨越哪些“雷区”?
  3. php程序员笔试题库,2017年初级PHP程序员笔试题
  4. 【学习笔记】操作系统之哲学原理
  5. 基于VUE的前端crypto-js aes加密与解密
  6. CentOS FTP安装及配置
  7. 【专栏】国内外物联网平台初探(篇二:阿里云物联网套件)
  8. SecondaryNameNode 的作用
  9. 第八章节 文件操作一 (文件夹常用操作)
  10. Ubuntu 20.04美化及QQ、微信、ssh客户端安装
  11. Giant MIDI Piano 安装教程
  12. [经验技巧] 小米线刷详细图文教程(具体步骤)
  13. C1认证学习四(多媒体基础参数)
  14. 6本豆瓣高分书,国内外的技术大牛都在看!
  15. 【通信】基于OFDMA系统的多用户资源分配求解论附文和MATLAB代码
  16. dw1000 PA和LNA控制
  17. 从零开始学习塞班S60v5的开发
  18. Python制作简易计算器
  19. 超级高铁HTT首批测试照片曝光!3年内商用
  20. 实例 | 能源区块链、物联网技术在智能电网中的趋势及前沿应用

热门文章

  1. word2010添加论文引用
  2. Python中“xx+=xx”与“xx=xx+xx”的区别
  3. 基于人脸面部检测的口罩识别系统
  4. 主板没有rgb接口怎么接灯_DIY只为玩游戏?主板配上RGB灯让机箱发光
  5. python hasattr函数_Python hasattr()函数
  6. 学渣的刷题之旅 leetcode刷题 69.x的平方根(暴力法、二分查找)
  7. 搭建文华财经博易大师信管家多国语言IQ Option二元期权源码
  8. 优秀的 Node.js 包汇总
  9. 分享 stormzhang的Andoid学习之路
  10. 从0开始学习 GitHub 系列之「06.团队合作利器 Branch」----转载自stormzhang 原创文章