zoukankan      html  css  js  c++  java
  • log4j小结

    核心包:


    org.apache.log4j

    三大组件


    Loggers

    日志操作

    Appenders 

    日志的展现形式

    Layouts

    日志的展现格式


    日志等级


    TRACE
    DEBUG
    INFO
    WARN
    ERROR
    FATAL

    TRACE < DEBUG < INFO < WARN < ERROR < FATAL


    日志请求等级


    logger.debug(Object message) //日志请求等级为:DEBUG
    info(Object message) //日志请求等级为:INFO
    logger.error(Object message) //日志请求等级为:ERROR

    日志请求等级必须>=日志等级,否则请求日志操作无效

    demo:


    ### direct log messages to stdout ###
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
    
    ### direct messages to file myfile.log ###
    log4j.appender.myfile=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.myfile.File=logs/myfile.log
    log4j.appender.myfile.DatePattern='.'yyyy-MM-dd
    log4j.appender.myfile.layout=org.apache.log4j.PatternLayout
    log4j.appender.myfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
    
    log4j.rootLogger=warn, stdout,myfile

    说明:

    log4j.rootLogger=warn, stdout,myfile
    定义主日志工具:rootLogger,其他日志工具能够通过日志名称从它继承
    日志级别:warn
    定义2两个Appender
    stdout:
    	org.apache.log4j.ConsoleAppender
    	相应log4j.appender.stdout及log4j.appender.stdout.layout的配置
    
    myfile:
    	org.apache.log4j.DailyRollingFileAppender
    	相应log4j.appender.myfile及log4j.appender.myfile.layout的配置

    代码:

    public class LogTest {
    	Logger logger=Logger.getLogger("test");
    	@Test
    	public void testLog(){
    		logger.debug("debug...");
    		logger.info("info...");
    		logger.warn("warn...");
    		logger.error("error...");
    		logger.fatal("fatal...");
    	}
    }

    执行结果:

    2014-06-29 05:46:50,805  WARN test:15 - warn...
    2014-06-29 05:46:50,807 ERROR test:16 - error...
    2014-06-29 05:46:50,807 FATAL test:17 - fatal...
    


    日志继承:


    ### direct log messages to stdout ###
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c:%L - %m%n
    
    
    ### direct messages to file myfile.log ###
    log4j.appender.myfile=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.myfile.File=logs/myfile.log
    log4j.appender.myfile.DatePattern='.'yyyy-MM-dd
    log4j.appender.myfile.layout=org.apache.log4j.PatternLayout
    log4j.appender.myfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c:%L - %m%n
    
    
    log4j.rootLogger=warn, stdout,myfile
    
    
    ### name:com.demo,level:info,Appender and layout inherit rootLogger ###
    log4j.logger.com.demo=info
    
    
    
    
    
    
    
    说明:

    log4j.logger.com.demo=info
    日志名称:com.demo
    日志等级为:info
    Appender and layout 继承 rootLogger

    代码:

    package org.log.test;
    
    import static org.junit.Assert.*;
    
    import org.apache.log4j.Logger;
    import org.junit.Test;
    
    
    public class LogTest {
    	Logger logger=Logger.getLogger("com.demo.test");
    	@Test
    	public void testLog(){
    		logger.debug("debug...");
    		logger.info("info...");
    		logger.warn("warn...");
    		logger.error("error...");
    		logger.fatal("fatal...");
    	}
    }
    

    com.demo.test 继承com.demo,通过包名形式的名称来实现

    结果:

    2014-06-29 06:12:13,488  INFO com.demo.test:14 - info...
    2014-06-29 06:12:13,491  WARN com.demo.test:15 - warn...
    2014-06-29 06:12:13,492 ERROR com.demo.test:16 - error...
    2014-06-29 06:12:13,492 FATAL com.demo.test:17 - fatal...
    


  • 相关阅读:
    Hbuilder——报错The keyword 'export' is reserved
    控制器里路径变量的使用
    Spring 控制器重定向
    Spring A 标签链接使用
    Spring switch的使用
    thymeleaf如何遍历数据 each循环的使用
    spring 机制 扫描包
    Spring分层次建包
    什么是MVC模型
    如何运行spring boot 工程
  • 原文地址:https://www.cnblogs.com/brucemengbm/p/7027537.html
Copyright © 2011-2022 走看看