1. 使用logback 0.9.7版本,我在使用logback0.9.5版本时不支持
2. 配置实例如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<substitutionProperty name="log.base" value="logs" />
<jmxConfigurator />
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%date [%thread] %-5level %logger{80} - %msg%n</pattern>
</layout>
</appender>
<appender name="logfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<Encoding>UTF-8</Encoding>
<File>${log.base}/cds.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${log.base}/cds-%d{yyyy-MM-dd}-%i.log</FileNamePattern>
<MaxHistory>10</MaxHistory>
<TimeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<MaxFileSize>2MB</MaxFileSize>
</TimeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%date [%thread] %-5level %logger{80} - %msg%n</pattern>
</layout>
</appender>
<logger name="org.springframework">
<level value="INFO" />
</logger>
<logger name="org.apache.ftpserver">
<level value="WARN" />
</logger>
<logger name="org.hibernate">
<level value="INFO" />
</logger>
<logger name="org.hibernate.SQL">
<level value="ERROR" />
</logger>
<logger name="org.hibernate.cache">
<level value="INFO" />
</logger>
<logger name="org.safehaus.asyncweb">
<level value="INFO" />
</logger>
<logger name="org.logicalcobwebs.proxool">
<level value="DEBUG" />
</logger>
<root>
<level value="WARN" />
<appender-ref ref="stdout" />
<appender-ref ref="logfile" />
</root>
</configuration>
分享到:
相关推荐
Logback提供了多种文件滚动策略,例如`SizeAndTimeBasedRollingPolicy`,可以根据文件大小和时间进行滚动。在上面的配置中,当单个日志文件达到100MB时,系统会自动创建新的文件,并将旧文件按日期压缩保存,最多...
学习 Logback 包括理解如何配置 `logback.xml` 文件以满足项目需求,如何在代码中使用 SLF4J API 来记录日志,以及如何管理和优化日志输出,比如控制日志文件大小、滚动策略等。对于 Java 开发者来说,熟练掌握 ...
本文主要介绍如何在Grails3项目中配置logback,实现日志的详细配置,包括按天生成独立的日志文件、日志格式设置以及对日志文件大小的控制。 首先,logback的配置文件是logback.groovy,需要放在项目的grails-app/...
- `<triggeringPolicy>`:触发滚动的条件,此处按文件大小。 - `<append>`:是否追加到现有文件,默认为 `false`。 - `<prudent>`:是否开启谨慎模式,在谨慎模式下,如果文件不存在,则不创建新文件,避免日志...
Logback提供了按日期滚动、按大小滚动等多种日志文件滚动策略,确保日志不会无限增长占用磁盘空间。 7. **MDC(Mapped Diagnostic Context)** MDC是Logback提供的一种特性,允许我们在代码中存储一些诊断信息,...
Logback允许配置日志文件的归档策略,例如按日期、大小等条件滚动。这有助于管理日志文件的大小和数量,防止存储空间被过度占用。 ### 9. 性能优化 Logback提供了多种性能优化选项,例如预编译日志模式、日志缓存...
这个配置中,`RollingFileAppender`定义了日志写入到`logs/catalina.log`文件,并使用`TimeBasedRollingPolicy`按日期进行滚动,每天生成一个新的日志文件,最多保留30天的历史日志。`encoder`部分则设置了日志的...
Logback 配置文件的灵活性使得它能够满足各种日志需求,包括控制日志级别、定制日志格式、设置日志输出位置以及管理日志文件大小。SLF4J 的使用则简化了与日志框架的交互,提供了良好的可移植性。正确配置和使用 ...
- **大小滚动策略(SizeBasedTriggeringPolicy)**:当日志文件达到一定大小时,会自动创建新的日志文件并保留旧文件。 - **时间滚动策略(TimeBasedTriggeringPolicy)**:根据时间(如每天、每小时)滚动日志...
Logback 支持对日志进行滚动配置,我们可以配置日志文件的最大大小和保存天数。例如: ``` ``` 这将将日志文件的最大大小设置为 50MB,保存天数设置为 10 天。 输出到控制台 Logback 支持输出日志信息到控制台...
Logback支持多种高级特性,例如日志文件大小限制、自动滚动、异步日志记录等。例如,你可以添加一个File Appender来将日志写入文件,并配置文件大小和保留策略: ```xml <appender name="FILE" class="ch.qos....
例如,我们可以设置每天生成一个新的日志文件,并且当文件大小达到一定值时自动归档: ```xml <appender name="ROLLING_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>logs/app.log ...
这样配置后,日志文件将按照日期自动滚动,并且当单个文件大小达到10MB时,触发滚动。 5. **自定义日志处理器** 如果需要对日志进行特殊处理,比如发送邮件、存入数据库等,可以通过定义自定义Appender实现。 6....
日志归档是LogBack的另一大特色,通过`TimeBasedRollingPolicy`可以设置日志文件按日期滚动,避免单个日志文件过大。同时,`SizeAndTimeBasedFNATP`策略允许在文件大小达到一定限制时进行滚动。 在分布式系统中,...
Logger定义了日志类别及其级别,Appender定义了日志输出的位置(控制台或文件等),Encoder定义了日志输出的格式,而RollingPolicy定义了日志文件的滚动策略(如按时间或大小滚动日志文件)。这些组件可以按照不同的...
例如,可以通过指定 <encoder> 中的 <pattern> 来定义日志的格式,通过 <rollingPolicy> 来设置日志文件的滚动策略,如基于时间的滚动或者基于大小的滚动。 示例配置中设置了日志文件的滚动策略,将日志保存在指定...
它可以通过 `<rollingPolicy>` 元素配置日志文件的滚动策略。 TimeBasedRollingPolicy TimeBasedRollingPolicy 是 Logback 中的一个滚动策略,根据时间来制定滚动策略。它可以根据日期和文件大小来决定日志文件的...
logback-spring.xml文件配置,1、异步日志,2、滚动日志,存放固定时长的日志,超过时间的自动删除,3、单个文件超过指定大小,分成多个,防止单个文件过大,查看不方便
此外,还可以配置日志文件的滚动策略,例如每天生成一个新的日志文件,或者当文件大小达到一定限制时滚动。 **滚动日志**功能允许你管理日志文件的大小和数量,防止日志文件无限制增长。Logback提供了...
在实际开发中,我们可能还需要根据项目需求调整日志策略,例如,增加异步日志处理以提高性能,或者配置日志滚动和大小限制。同时,通过使用`logging.level.<package>=<level>`在SpringBoot的`application.properties...