zoukankan      html  css  js  c++  java
  • log4j日志输出框架

    什么是log4j框架呢?

    log4j是一个日志输出框架,用于输出日志的。比如MyBatis的日志就是通过log4j输出的,主流框架都是log4j输出的,Spring框架

    也可以通过log4j输出日志!!

    log4j的功能类似于System.out.println(),那为什么要用log4j呢?

    因为它提供了强大的日志输出的自定义功能。

    1.通过及级别输出日志(调试DEBUG、信息INFO、警告WRAN、错误ERROR、致命错误FATAL)

    2.可以指定输入到控制台,输入到文件。

    3.可以设置输出的日志格式

    log4j框架的配置及测试代码

    1.导入log4j的jar包

    2.在src下创建一个log4j.propertis文件

    注意:文件名必须为log4j.propertis

    #log4j的声明,格式为:log4j.rootLogger=输出等级,输出策略名1,输出策略名2,输出策略名3....
    ##输出日志等级选项
    ##DEBUG 调试输出日志
    ##INFO  信息输出日志
    ##WARN  警告输出日志
    ##ERROR 错误输出日志
    ##FATAL 致命错误输出日志
    log4j.rootLogger=DEBUG,A1,A2,A3
    
    #A1策略的声明
    ##指定输出的类型(类全限制名),ConsoleAppender表示控制台输出
    ##ConsoleAppender 控制台输出
    ##FileAppender 通过文件输出
    ##DailyRollingFileAppender 以文件输出,每天产生一个日志文件
    ##RollingFileAppender 以指定的大小来产生一个日志文件
    ##WriterAppender 以流的方式输出文件到指定的设备
    
    log4j.appender.A1=org.apache.log4j.ConsoleAppender
    ##指定该类型的一些属性,layout,值的是使用声明格式输出
    ##PatternLayout,自定义输出日志的格式
    ##HTMLLayout ,使用HTML文件输出
    ##SimpleLayout ,包含日志信息的级别和信息字符串
    ##TTCCLayout ,包含日志产生的时间、线程、类别等等信息
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    ##设置自定义的输出格式规则
    log4j.appender.A1.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n
    
    #A2策略的声明
    log4j.appender.A2=org.apache.log4j.FileAppender
    ##创建文件路径 log4j.appender.A2.file
    =e:/log/lo4j.log log4j.appender.A2.layout=org.apache.log4j.PatternLayout log4j.appender.A2.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n #A3策略的声明 log4j.appender.A3=org.apache.log4j.FileAppender log4j.appender.A3.file=e:/log/lo4j.html log4j.appender.A3.layout=org.apache.log4j.HTMLLayout

    测试代码:

    package cn.sebb;
    
    import org.apache.log4j.LogManager;
    import org.apache.log4j.Logger;
    
    public class Log4jTest {
        
        public static void main(String[] args) {
            //获得Logger对象,输出日志,LogManager对象默认获得的配置文件是classpath根目录的log4j.properties文件
            //日志的级别:DEBUG < INFO < WARN < ERROR < FATAL
            //日志输出,根据配置的最低级别输出
            Logger logger=LogManager.getLogger(Log4jTest.class);
            //什么时候写debug,当我们需要通过调试信息分析逻辑时,将调试信息写在DEBUG级别里面
            logger.debug("调试日志");
            //什么时候写info,希望在试运行的时候,输出的调试信息
            logger.info("信息日志");
            //代码可以会出现问题的地方,设置警告日志
            logger.warn("警告日志");
            //报异常的时候,我们使用错误日志
            logger.error("错误日志");
            //特别重要的错误信息
            logger.fatal("致命错误日志");
        }
    
    }
  • 相关阅读:
    总结DataTable,DataSet的使用方法。
    关闭子窗口刷新父窗体
    mysql中优化thread_concurrency的误区
    多看书
    shell导出mysql所有用户权限
    调整max_allowed_packet的大小
    Unknown table 'a' in MULTI DELETE的解决办法
    linux借助expect完成自动登录
    mysql的tmp_table_size和max_heap_table_size
    中英文职位对照
  • 原文地址:https://www.cnblogs.com/hq1997/p/10752847.html
Copyright © 2011-2022 走看看