大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
[Java教程]log4j配置文件详解
0 2016-07-25 23:00:18
在开发中经常会碰到日志,网上关于日志的框架也很多,像log4j、self4j、common-logging等,下面对log4j进行介绍。
log4j是java开发的日志框架,具有低侵入的特点,其重点使用的部分是log4j的配置文件,有两格式的配置文件,一种### set log levels ### log4j.rootLogger = debug,stdout,D,E log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n log4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j.appender.D.File = F://logs/log.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{yyyy-MM-dd HH:mm:ss} [ %t:%r ] – [ %p ] %m%n log4j.appender.E = org.apache.log4j.DailyRollingFileAppender log4j.appender.E.File =F://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{yyyy-MM-dd HH:mm:ss} [ %t:%r ] – [ %p ] %m%n
上面是properties格式的配置文件
log4j.rootLogger
指定日志的输出级别和输出目的地,如,debug,sdtout,file
debug 指定日志的输出界别,log4j一共定义了9中日志界别:off、fatal、error、warn、info、debug、all 推荐使用其中的四种级别:error、warn、info、debug,如果使用了info,则error、warn、info级别都会输出,如果使用warn则error、info级别的日志都会输出;sdtout、file指定的是日志输出的位置的一个名称
log4j.appender.sdtout=org.apache.log4j.ConsoleAppender 指定sdtout的输出使用的是ConsoleAppender类,即输出到控制台
log4j.appender.stdout.Target = System.out 使用System.out 进行输出
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout 输出的布局
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n 输出的日志格式
默认情况下配置log4j.rootLogger对整个项目其作用,如果想对某个包起作用可以配置如下
log4j.logger.com.cn.mapper=debug com.cn.mapper是包名,此包下的所有类的日志都会输出,输出的级别为debug,即error、warn、info、debug级别的日志都会输出。
综上所述,一个log4j的配置文件包括以下及部分
log4j.rootLogger=[info|debug],sdtout,mail,file,appenderName 日志文件的级别,输出目的地名称
log4j.appender.appenderName=org.apache.log4j.DailyRollingFileAppender appenderName需要换成相应的名称 org.apache.log4j.DailyRollingFileAppender 指定使用的类
这里的类有以下几种:org.apache.log4j.ConsoleAppender(控制台)、org.apache.log4j.FileAppender(文件)、org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件) 、org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件
ConsoleAppender 是输出到控制台 ,有以下可选项Threshold(指定日志输出的最低级别)、Target(输出控制台)
log4j.appender.appenderName.layout = org.apache.log4j.PatternLayout 日志的格式布局,有这样几个可选的布局:org.apache.log4j.HTMLLayout(以HTML表格形式布局)、org.apache.log4j.PatternLayout(可以灵活地指定布局模式) 、org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串) 、org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
下面是一个输出到控制台的log4j的配置文件,### set log levels ### log4j.rootLogger = debug,stdoutlog4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
了解了log4j的配置文件之后,便可以按照需要配置日志的输出目的地、输出级别等。
有不当之处,欢迎指正
谢谢
本文网址:http://www.shaoqun.com/a/241189.html
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。
0
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/187557.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...