美文网首页
Java日志Logback简单使用

Java日志Logback简单使用

作者: SuperZ2017 | 来源:发表于2019-03-14 15:03 被阅读0次

    Logback是对log4j的升级版,有着更快的速度和更少的内存占用。

    Logback有三个模块:

               1.logback-core:日志处理核心组件

               2. Logback-classic:该模块可以视为log4j的显著改进版本,同时实现了slf4j api。

               3. Logback-access:该模块与Servlet容器(如Tomcat和Jetty)集成,以提供HTTP访问日志功能。

    在Web应用程序中应用slf4j和logback

1.导入相关jar包到WEB-INF/lib下(如果是Maven工程请忽视这一步)

2. Maven工程中添加Logback依赖项到pom.xml中。

```

    <dependcy>

        <groupId>ch.qos.logback</groupId>

        <artifactId>logback-classic</artifactId>

        <version>1.0.13</version>

</dependcy>

```

3. XML配置

```

<?xml Version=”1.0” encoding=”UTF-8”?>

<configuration>

    <appender name =“STDOUT”class =“ch.qos.logback.core.ConsoleAppender”> 

       <layout class =“ch.qos。 logback.classic.PatternLayout“>

       <Pattern>%d {HH:mm:ss.SSS} [%thread]%-5level%logger {36} - %msg%n </ Pattern>

        </ layout>

    </ appender>

    <logger name =“com.base22”level =“TRACE”/>

     <root level =“debug”>

        <appender-ref ref =“STDOUT”/>

    </ root>

</ configuration>

```

注意到一个记录器是在包级别定义的(“com.base22”)。您可以简单地更改它以匹配您的应用程序的包基础。如果需要,您还可以声明其他记录器(包和/或类)。

4. 将日志记录代码放到类中:

```

    import org.slf4j.Logger;

    import org.slf4j.LoggerFactory;

```

在类顶部添加一下内容(在声明类公共类的行下面),在getLogger方法中调用中更改类的名称(MyClassName)。

```

static final Logger LOG = LoggerFactory.getLogger(MyClassName.class);

```

可以在代码中的某些位置设置一些日志记录语句,在运行应用程序时它们会立即被执行。

```

LOG.trace("Hello World!");

LOG.debug("How are you today?");

LOG.info("I am fine.");

LOG.warn("I love programming.");

LOG.error("I am programming.");

```

下面是一个简单的测试程序:

```

public class SLF4JConsoleTest {

    static final Logger LOG = LoggerFactory.getLogger(SLF4JConsoleTest.class);

    public static void main(String[] args) {

    SLF4JConsoleTest console = new SLF4JConsoleTest();

    console.execute();

}

public SLF4JConsoleTest() {

}

public void execute() {

    if (LOG.isTraceEnabled()) {

        LOG.trace("Test: TRACE level message.");

    }

    if (LOG.isDebugEnabled()) {

        LOG.debug("Test: DEBUG level message.");

    }

    if (LOG.isInfoEnabled()) {

        LOG.info("Test: INFO level message.");

    }

    if (LOG.isWarnEnabled()) {

        LOG.warn("Test: WARN level message.");

    }

    if (LOG.isErrorEnabled()) {

        LOG.error("Test: ERROR level message.");

    }

    }

}

```

相关文章

网友评论

      本文标题:Java日志Logback简单使用

      本文链接:https://www.haomeiwen.com/subject/jkvqmqtx.html