zoukankan      html  css  js  c++  java
  • SLF4J 使用简记

    SLF4J 使用简记

    使用 SLF4J有一段时间了,在此作上些许记录,以作提示。
    本文使用的实际实现的日志框架是 Log4j,所以使用 log4j.properties 文件

    SLF4J 需要引入的jar包

    • Maven
    <dependencies>
        <dependency>
      	<groupId>org.slf4j</groupId>
      	<artifactId>slf4j-log4j12</artifactId>
            <version>1.7.21</version>
        </dependency>
    <dependencies>
    

    Maven 会连带引入以上包的依赖树以来的包,如下图所示

    添加日志配置文件 log4j.properties

    • log4j.properties 示例
    ### 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 =  %d{ABSOLUTE} %5p %c{1}:%L - %m%n
    
    ### 输出到日志文件 ###
    log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.D.File = logs/log.log
    log4j.appender.D.Append = true
    log4j.appender.D.Threshold = DEBUG ## 输出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 = /logs/error.log ## 异常日志文件名
    log4j.appender.E.Append = true
    log4j.appender.E.Threshold = ERROR ## 只输出ERROR级别以上的日志!!!
    log4j.appender.E.layout = org.apache.log4j.PatternLayout
    log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [%l:%c:%t:%r] - [%p]  %m%n
    

    更多 Log4j 输出配置参数,参看: Apache Log4j PatternLayout

    SLF4JJava 类中使用的示例

    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    public class SLF4JUseCase {
    
    	final static Logger log = LoggerFactory.getLogger(SLF4JUseCase.class);
    
    	public static void main(String[] args) {
    		log.info("main 方法开始");
    		log.debug("信息");
    		try{
    			String currentClassPath = SLF4JUseCase.class.getResource("").getPath();
    			log.info("{} 是当前类所在的路径",currentClassPath);
    		}catch(Exception e){
    			log.error("路径获取错误。",e);
    		}
    	}
    }
    
    
    • 运行后输出如下:
    2016-07-10 15:08:35:132  INFO SLF4JUseCase:main:9 - main 方法开始
    2016-07-10 15:08:35:134 DEBUG SLF4JUseCase:main:10 - 信息
    2016-07-10 15:08:35:136  INFO SLF4JUseCase:main:13 - /C:/Users/UserName/workspaces/Prictice/demo/target/classes/ 是当前类的路径
    
  • 相关阅读:
    osg::BlendFunc来设置透明度
    LCA(Tarjan)
    CODEVS1073 家族 (并查集)
    CODEVS1533 互斥的数(哈希表)
    2014-12-4
    BZOJ2661 连连看 (费用流)
    2014-11-30
    JAVA语法基础作业——动手动脑以及课后实验性问题
    课后作业01——相加
    再读大道至简第二章
  • 原文地址:https://www.cnblogs.com/XZHR/p/5657731.html
Copyright © 2011-2022 走看看