官网地址: http://logback.qos.ch/index.html
Logback 打算作为流行的 log4j 项目的继承者,继承 log4j 的不足之处。
Logback 的体系结构足够通用,可以在不同的情况下应用。 目前,日志回溯分为三个模块: logback-core, logback-classic and logback-access。
Logback-core 模块为其他两个模块奠定了基础。可以将 logback-classic 模块同化为 log4j 的一个显著改进版本。 此外,logback-classic 本机实现了 SLF4J API,这样您就可以在 logback 和其他日志框架(如 log4j 或 java.util.logging (JUL))之间来回切换。
Logback-access 模块与 Servlet 容器(如 Tomcat 和 Jetty)集成,以提供 HTTP-access 日志功能。 注意,您可以轻松地在 logback-core 之上构建自己的模块。
当前正在积极开发的支持 JavaEE 的 logback 版本(Java。* 名称空间)是1.3.11。它需要 SLF4J 版本 2.0.7和 JDK 8。
1
| implementation("ch.qos.logback:logback-classic:1.3.11")
|
当前正在积极开发的支持 JakartaEE (jakartaEE)的 logback 版本。* 名称空间)是1.4.11。它需要 SLF4J 版本 2.0.7 和 JDK 11。
1
| implementation("ch.qos.logback:logback-classic:1.4.11")
|
一个案例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <?xml version="1.0" encoding="UTF-8"?> <configuration> <property name="log.moduleName" value="pre-product" /> <springProperty scope="context" name="server.port" source="server.port"/>
<conversionRule conversionWord="ip" converterClass="com.poly.nci.product.config.LogIpConfig" /> <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" /> <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" /> <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %-5level [${log.moduleName},%ip:${server.port},%X{X-B3-TraceId:-},%X{X-B3-SpanId:-},%X{X-B3-ParentSpanId:-},%thread] %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<appender name="product" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>logs/product.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>logs/product.log%d{yyyy-MM-dd} </fileNamePattern> <maxHistory>10</maxHistory> </rollingPolicy> <encoder charset="UTF-8"> <pattern> ${CONSOLE_LOG_PATTERN}</pattern> </encoder> </appender>
<logger name="cn.com.poly.nci" level="info" />
<root level="info"> <appender-ref ref="product" /> </root>
</configuration>
|