官网:https://logback.qos.ch/ https://logback.qos.ch/manual/index.html logback手册 1.下载 logback是slf4j的原生实现,所以在使用logback时,必须配置slf4j-api依赖。 具体来说,必须依赖3个组件:slf4j-api,logback-core,logback-classic。
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>${version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${version}</version>
</dependency>
</dependencies>
2.组件架构 logback包含3大组件:Logger, Appender,Layout。
3.配置 (1)logback在启动时会在classpath路径下按顺序找3个配置文件:logback-test.xml,logback.groovy,logback.xml,只要找到了其中一个,就停止查找。 如果在classpath下没有找到任何logback配置文件,将使用ch.qos.logback.classic.Configurator作为默认配置,将日志打印了控制台,默认配置为DEBUG级别。 (2)通过系统属性制定logback配置文件:java -Dlogback.configurationFile=/path/to/config.xml chapters.configuration.MyApp1。 (3)动态加载配置变化:scan="true" scanPeriod="30 seconds" (4)打印异常堆栈所在jar包信息:packagingData="true" (5)配置语法:xml格式
配置模板(将日志输出到控制台和文件):
<configuration scan="true" scanPeriod="30 seconds" debug="false" packagingData="true">
<!-- <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" /> -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
<encoder>
<!-- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> -->
<pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>myApp.log</file>
<encoder>
<pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
</encoder>
</appender>
<!--
no longer interested in seeing any DEBUG messages from any component belonging to the "org.chench.test.logback" package
-->
<logger name="org.chench.test.logback" level="INFO"/>
<logger name="org.chench.test.logback.LogbackExampleLevel" level="DEBUG"/>
<root level="debug">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>
【参考】 http://www.cnblogs.com/yongze103/archive/2012/05/05/2484753.html Logback浅析