zoukankan      html  css  js  c++  java
  • java 日志体系

      在编程中,日志可以快速的帮我们进行定位到异常信息以及生产问题的分析,但是由于java 日志框架繁多并且不同系统中获取采用的是不同的日志框架,就导致了对于日志的管理以及分析是一个很繁重的事情,那么有没有一个框架用于解决这一个现象,来规范统一项目的日志处理,由此 SLF4J应用而生; 

      SLF4J 提供了java 日志系统的门面,日志的实现由SLF4J 进行自动适配,SLF4J 只进行抽象适配,并不负责日志具体的实,具体的实现还是由开发者自己进行选择需要的日志框架。就不会出现一个应用多个日志框架的情况,从而达到日志由一个统一日志框架实现的目的。

       说了这么多,我们来看一下我们常用的日志门面有:commons-logging(jul), slf4j  用于进行整合统一项目日志框架;

            java 日志真正的实现有:log4j , log4j2, jul,logback simpleLog 等;

        

      下图是SLF4J 实现某一日志框架的过程:

          1. 进行替换项目已有的日志框架以及门面,把所有日志统一到slf4j 门面上;

          2. 进行日志桥接到需要使用到日志框架中;

       

      1.  SLF4J 提供了狸猫换太子的方式,创建相同的包名字,进行不同的实现来确保一些常用的日志框架的日志使用全部由slf4j 进行统一管理;

      •   jul-to-slf4j:jdk-logging到slf4j
      •   log4j-over-slf4j:log4j1到slf4j
      •   jcl-over-slf4j:commons-logging到slf4j

      2. 有了这些 jar 包,这些日志框架都交给了slf4j进行了统一管理,再配置其他日志框架向slf4j 转换桥梁的jar包,就可以让单独一个日志框架进行日志的输出,避免混乱局面。

      

      • logback-classic ,logback-core :logback 日志框架实现
      • slf4j-log412: log4j 日志框架的实现
      • slf4j-jdk14:jul 日志框架的实现

    桥接如下: 

  • 相关阅读:
    GCD HDU
    Finding Lines UVALive
    Chinese Mahjong UVA
    DNA Evolution CodeForces
    String Reconstruction (并查集)
    Number Cutting Game HDU
    Paint the Wall ZOJ
    Star sky CodeForces
    Haunted Graveyard ZOJ
    GuGuFishtion HDU
  • 原文地址:https://www.cnblogs.com/iscys/p/10838177.html
Copyright © 2011-2022 走看看