Log4j使用笔记
一、maven依赖的配置
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
二、配置properties文件
log4j.appender.console = org.apache.log4j.ConsoleAppender (输出端)log4j.appender.console.Threshold=info (日志级别)log4j.appender.console.Target=System.out (目标)log4j.appender.console.layout = org.apache.log4j.PatternLayout (日志格式器)log4j.appender.console.layout.ConversionPattern =%p: %m%n [%d] [%c] [%r] [%t]%n (转换表达式)
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender (每天产生一个文件)log4j.appender.file.DatePattern='_'yyyy-MM-dd'.log' (前一天日志文件命名格式)log4j.appender.file.File = F:/log/oa.log (生成的文件)log4j.appender.file.layout = org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern =%p: %m%n [%d] [%c] [%r] [%t]%n
%p 输出优先级,即DEBUG,INFO,WARN,ERROR%m 输出代码中指定的消息%n 输出一个回车换行符,Windows平台为“/r/n”,Unix平台为“/n”%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss},输出类似:2002年10月18日 22 : 10 : 28%c 输出所属的类目,通常就是所在类的全名%r 输出自应用启动到输出该log信息耗费的毫秒数%t 输出产生该日志事件的线程名(4)完整的配置文件如下:
## LOG4J 日志配置 ##
##01 配置全局日志
log4j.rootLogger = info,console,file
##02 配置指定包下的日志(局部),其他包的日志级别按全局的处理。(不过最终会输出的级别还和下面输出方式配置的级别有关系),
# Hibernate5 logger(虽然这里配置的是debug级,如果控制台配置的是info级别的话,debug级的日志也是不会输出的)
log4j.logger.org.hibernate=debug
log4j.logger.org.hibernate.hql=debug
##03 配置输出方式 ##
# 输出到控制台
log4j.appender.console = org.apache.log4j.ConsoleAppender
log4j.appender.console.Threshold=info
log4j.appender.console.Target=System.out
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern =%p: %m%n [%d] [%c] [%r] [%t]%n
# 输出到文件
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.Threshold=info
# 设置DatePattern,当天日志保存到tax.log文件,前一天的日志文件名将被修改为tax.log + _yyyy-MM-dd.log
log4j.appender.file.DatePattern='_'yyyy-MM-dd'.log'
log4j.appender.file.File = D:/log/tax.log
log4j.appender.file.layout = org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern =%p: %m%n [%d] [%c] [%r] [%t]%n
## LOG4J 日志配置 ##
##01 配置全局日志
log4j.rootLogger = info,console,file
##02 配置指定包下的日志(局部),其他包的日志级别按全局的处理。(不过最终会输出的级别还和下面输出方式配置的级别有关系),
# Hibernate5 logger(虽然这里配置的是debug级,如果控制台配置的是info级别的话,debug级的日志也是不会输出的)
log4j.logger.org.hibernate=debug
log4j.logger.org.hibernate.hql=debug
##03 配置输出方式 ##
# 输出到控制台
log4j.appender.console = org.apache.log4j.ConsoleAppender
log4j.appender.console.Threshold=info
log4j.appender.console.Target=System.out
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern =%p: %m%n [%d] [%c] [%r] [%t]%n
# 输出到文件
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.Threshold=info
# 设置DatePattern,当天日志保存到tax.log文件,前一天的日志文件名将被修改为tax.log + _yyyy-MM-dd.log
log4j.appender.file.DatePattern='_'yyyy-MM-dd'.log'
log4j.appender.file.File = D:/log/tax.log
log4j.appender.file.layout = org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern =%p: %m%n [%d] [%c] [%r] [%t]%n
三、配置文件的解释
四、在java代码中使用日志
public static void main(String[] args) {
Logger logger = Logger.getLogger(TestSpring.class);
logger.debug("这是debug");
logger.info("这是Info");
logger.error("这是error");
}
public static void main(String[] args) {
Logger logger = Logger.getLogger(TestSpring.class);
logger.debug("这是debug");
logger.info("这是Info");
logger.error("这是error");
}
Log4j使用笔记的更多相关文章
- Log4j使用笔记:每天生成一个日志文件、按日志大小生成文件
其中TestLog4j.java如下: package cn.zhoucy.test; import org.apache.log4j.Logger; public class TestLog4j { ...
- log4j 使用笔记整理中
Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式. 日志信息的常用的优先级从高到低有ERROR.WARN. INFO.DEBUG,分别用来指定这条日志信息的重 ...
- log4j学习笔记
在java文件中导入包: import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; 在所使 ...
- Log4J使用笔记(转)
转自:http://www.cnblogs.com/eflylab/archive/2007/01/11/618001.html Log4J是Apache的一个开放源代码的项目.通过使用Log4J,程 ...
- java中log4j学习笔记
Log4j是apache的一个开源项目,用来操作程序日志信息的框架.因便于管理,在工程中用来代替System.out打印语句.通过配置Log4j中的log4j.properties,可以指定日志信息的 ...
- slf4j使用log4j学习笔记
一,介绍 SLF4J 简单日记门面(Facade)SLF4J是为各种loging APIs提供一个简单统一的接口,从而使得最终用户能够在部署的时候配置自己希望的loging APIs实现. Loggi ...
- Log4j的应用实例(转)
转自:http://www.cnblogs.com/eflylab/archive/2007/01/12/618080.html 在Log4J使用笔记中没有怎么写实例,那么在这篇中我将Log4j的一个 ...
- Log4j中配置日志文件相对路径
方法一. 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs ...
- Log4j介绍,log4j.properties配置详解
http://www.cnblogs.com/simle/archive/2011/09/29/2195341.html本文主要解释log4j的配置文件各个配置项的含义,内容是从网上转载的 1.Log ...
随机推荐
- 在Centos下面FTP映射方案
前两天公司要在一台Centos的机子上,把一些文件定时备份到另外一台ftp服务器上, 在Linux系统中,mount是不支持直接挂在"ftp://192.168.1.1/backup&quo ...
- C# 插件式开发
在网上找了下插件式编程的资料,这里自己先借鉴下别人的,同时发现有自己的看法,不过由于本人水平有限,不一定有参考价值,写出来一方面是为了总结自己,以求提高,另一方面也希望各为朋友看到我的不足,给我提出宝 ...
- 使用反射修改final属性
情型1:static final属性,无法修改其值. package m5.d7; import java.lang.reflect.Field; public class FieldTest { p ...
- 关于SQL Server将一列的多行内容拼接成一行,合并显示在另外表中
select '['+title_a+','+title_b +']' from A for xml path('') SELECT *, (select '['+title_a+','+titl ...
- HDU ACM 1869 六度分离(Floyd)
六度分离 Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- My strength (C-A-R)
My strength: I am good at problem resolving Challenge In the first year when I come to America I pas ...
- knockoutjs关于ko.bindingHandlers的updata订阅
ko.bindingHandlers是先执行init进行初始化数据的绑定(如果需要执行updata进行数据更新可以不用初始化); init: function(element, valueAccess ...
- VRS的GPS/BDS双系统网元固定存在的问题
问题如下:部分网元固定卫星数少于2个. 另外:北方xinkong的网元组网也存在问题
- Deuteronomy
You should choose the right path when you can choose, and you should choose the right path even if y ...
- Python3编写网络爬虫07-基本解析库pyquery的使用
三.pyquery 简介:同样是一个强大的网页解析工具 它提供了和jQuery类似的语法来解析HTML文档,支持CSS选择器,使用非常方便 安装: pip install pyquery 验证: im ...