log4j使用,配置,日志的格式,日志的级别,框架的日志信息

本文介绍了log4j的使用方法,包括在类中使用Logger输出日志信息,在工程根类路径下配置log4j.properties,设置日志布局等。还阐述了日志的不同级别,以及如何配置日志级别使相应日志信息输出。此外,说明了项目中引用jar包日志信息的打印方法,并给出实例。

这篇文章东拼西凑,有引用的别人的博客的网址,现在对log4j的理解程度也只不过是知道一些使用方法而已

在学习一些工具的时候,运行所写的代码,有时出错但是日志信息不够,要解决问题日志是很必须的,以前只是把老师的log4j.properties粘上就用了,有报错信息,但是对log4j是一点了解都没有,今天查了查资料,log4j使用非常方便

只要你的类中使用Logger输出日志信息,不同的方法输出的日志有不同的级别,运行你的代码,log4j会向指定的位置输出指定格式的你指定要输出的日志,这对监控程序的运行状态非常有用

class.getName() 返回全路径名
使用方法
    新建一个Logger logger=new Logger(String name); //参数一般是所在类的名字 TestLog4j.class.getName()
        调用logger方法.info() .debug() .error() .warn() .all() .fatal() .trace()
    工程根类路径下配置log4j.properties
        配置相应appender 
            log4j.rootLogger=DEBUG,outputfile //DEBUG级别,日志信息输出到appender,appender的名字为outputfile
            log4j.appender.outputfile=        //appender 的类别
                          .outputfile.distination= //appender 的目的地
                          .outputfile.layout  //appender 日志信息的布局类别
                          .outputfile.layout.conversionPattern //appender 日志信息布局的配置
    布局的设置
        %m 日志信息本身
        %c 产生日志的类,new Logger(String name);中的参数
        %M 产生日志的方法
        %t 产生日志的线程
        %l 产生日志的语句的行号
        
        %p 日志的级别 log4j.rootLogger=DEBUG 中的DEBUG
        %d 产生日志的时间
        %r 产生日志的时间与程序启动时间的毫秒值差
        %n 一个换行符      https://baike.baidu.com/item/log4j/480673?fr=aladdin

日志的级别
        ALL(所有的日志) > FATAL(无法修复的错误) > ERROR(可修复,不确定系统可以继续正常运行) > WARN(可修复,系统可以继续正常运 行)  > INFO(程序正常运行反馈的信息) > DEBUG(任何被认为有利于调试的信息) > TRACE(程序每推进一步都可以反馈一下)
        https://www.cnblogs.com/alice-fee/p/6214654.html
        https://blog.youkuaiyun.com/wewewfs/article/details/54948427
        在log4j.rootLogger配置日志级别,所有的 级别大于配置中的日志级别的 日志信息都会被输出
        

项目中引用的jar包的日志信息的打印
        项目本身不会打印引用的jar包的日志,如果jar包使用log4j作为日志输出工具,要知道jar包的运行情况,在配置了rootLogger,appender的            前提下,配置--log4j.logger.package=级别,相应位置会打印jar包的日志,级别要高于rootLogger的级才有效
        例如     
            log4j.rootLogger=DEBUG,console
            log4j.logger.apache.storm.core=WARN // storm包的日志会打印到appender console指定的位置
        
    
    实例
        log4j.rootLogger=DEBUG,outputfile         //可以有多个appender,appender在下面配置
        log4j.appender.outputfile=org.apache.log4j.FileAppender
        log4j.appender.outputfile.file=e:/log.out
        log4j.appender.outputfile.layout=org.apache.log4j.PatternLayout
        log4j.appender.outputfile.layout.conversionPattern=[%p]%m%n        //日志存入文件,格式为--[级别]日志换行
        
        public class TestLog4j {
            private static Logger logger=Logger.getLogger(TestLog4j.class.getName());
            public static void main(String[] args) {
                System.out.println(TestLog4j.class.getName());
                logger.debug("Hello,this is an debug message");
                logger.info("Hello this is an info message");
                logger.error("Hello this is an error message");
            }                                                                            
        }                                                                
        输出结果
            [DEBUG]Hello,this is an debug message
            [INFO]Hello this is an info message
            [ERROR]Hello this is an error message
        
        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值