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

这篇文章东拼西凑,有引用的别人的博客的网址,现在对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.csdn.net/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
        
        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值