• Java常用日志框架详解


    转自:

    Java常用日志框架详解

    下文笔者讲述日常开发中常见的日志框架简介说明,如下所示

    日志框架简介

    Java日常开发中
     我们常见的日志框架有:
       JDKLog、Log4J、LogBack、SLF4J、SLF4J
     下文将依次讲述各日志框架的用途,如下所示
    

    JDKLog(日志小刀)

    JDKLog是JDK官方提供的一个记录日志的方式,直接在JDK中就可以使用。
    
    import java.util.logging.Logger;
    /****
     ** JDKLog 示例
     **/
    public class JDKLog {
    	public static void main(String[] args) {
    		Logger logger = Logger.getLogger("JDKLog");
    		logger.info("Hello World JDKLog.");
    	}
    }
    
    JDKLog优点:
       使用非常简单,无需外界jar包
       但是功能简单,扩展性差,目前市面上很少人使用 
    

    Log4J日志大炮

    Log4j简介

    Log4J是Apache中的日志开源框架
        有多个分级(DEBUG/INFO/WARN/ERROR)记录级别
        可区分记录,非常方便日志查看 
    
    Log4J:
        有1.X版本和2.X 版本
        现在官方推荐使用 2.X 版本
        2.X架构和配置上都进行了调整 
    注意事项:
      log4J1.x版本已经停止维护(2015年8月)
      现在大家都使用Log4j2版本
    

    Log4j2使用示例

    1.使用Log4J2.x框架首先需要引入依赖的包
    
      
      
        org.apache.logging.log4j  
        log4j-api  
        2.6.2  
      
      
        org.apache.logging.log4j  
        log4j-core  
        2.6.2  
      
    
    2.增加配置文件 log4j2.xml 放在 resource 目录下:
    
    
    
        
            
                
            
        
        
            
                
            
        
    
    
    注意事项:
       节点level属性表示输出的最低级别 
    
    3:编写测试类
    
    import org.apache.logging.log4j.LogManager;
    import org.apache.logging.log4j.Logger;
     
    /****
     ** Log4J Demo
     **/
    public class Log4jLog {
    	public static void main(String args[]) {
    		Logger logger = LogManager.getLogger(Log4jLog.class);
    		logger.debug("Debug Level");
    		logger.info("Info Level");
    		logger.warn("Warn Level");
    		logger.error("Error Level");
    	}
    }
    

    注意事项:
        当没有配置log4j2.xml配置文件
        则LOG4J将自动启用类似于下面的的配置文件
    
    
    
        
            
                
            
        
        
            
                
            
        
    
    

    LogBack日志火箭

    LogBack是Log4J进化版
      它和Log4j的日志框架属于一个作者
      LogBack具有Log4j的所有优点,并且还引入占位符的概念
      

    使用LogBack示例

    1.引入相应的jar包
    
    
        ch.qos.logback
        logback-classic
        1.1.7
    
    
    2.配置logback.xml 
    
    
        
            
                %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
            
        
        
        
            
        
    
    
    注意事项:
       LogBack 的日志级别区分可以细分到类或包
       这样就可以使日志记录变得更加灵活
        在之后的类文件中引入Logger类,并进行日志记录。
    
    3.测试代码编写
    
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    /****
     ** LogBack Demo
     **/
    public class LogBack {
    	static final Logger logger = LoggerFactory.getLogger(LogBack.class);
     
    	public static void main(String[] args) {
    		logger.trace("Trace Level.");
    		logger.debug("Debug Level.");
    		logger.info("Info Level.");
    		logger.warn("Warn Level.");
    		logger.error("Error Level.");
    	}
    }
    

    LogBack优点

    1.LogBack解决Log4J不能使用占位符的问题
    2.运行速度快
    3.内部集成了SLF4J
  • 相关阅读:
    慕课9、消息驱动的微服务-Spring Cloud Alibaba RocketMQ
    操作系统文件共享方式
    “乘风破浪”的芒果超媒,能上岸吗?
    Spring Cloud Alibaba —— nacos配置中心管理数据库、gateway等配置项
    @controller和@RestController的区别
    组合继承
    壁炉的智能化:现代设计师的创新挑战
    平衡搜索树——B-树小记
    【利用冒泡排序的思想模拟实现qsort函数】
    解决huggingface 在代码因为网络无法下载模型和数据集的问题(伪)
  • 原文地址:https://blog.csdn.net/qq_25073223/article/details/127957823