• 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
  • 相关阅读:
    Redis分布式锁
    第十四章·享元模式
    Java.lang.Class类 isInterface()方法有什么功能呢?
    springboot 批量下载文件, zip压缩下载
    openvino cpp使用
    Jsp+MySQL学生学籍信息管理系统 Java毕业设计
    计算机网络:最优路由条目优选
    攻击检测和防护
    使用Chatgpt编写的PHP数据库pdo操作类(增删改查)
    开发工具记录
  • 原文地址:https://blog.csdn.net/qq_25073223/article/details/127957823