`

logback 异步写入示例

 
阅读更多
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<substitutionProperty name="log.base" value="d:\\test\\status" />
	<!--appender 输出目的地 console 控制台 -->
	<appender name="console" class="ch.qos.logback.core.ConsoleAppender"
		target="System.out">
		<encoder charset="UTF-8">
			<pattern>%date{yyyy-MM-dd HH:mm:ss} [%logger{5}]-[%le] - %m%n</pattern>
		</encoder>
		<target>System.out</target>
	</appender>

	<!--appender 输出目的地 file 文件   -->
	<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<File>${log.base}/status.log</File>
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<fileNamePattern>${log.base}/status-%d{yyyy-MM-dd-HH}.log</fileNamePattern>
		</rollingPolicy>
		<!-- 编码格式解析器 -->
		<encoder>
			<pattern>%date{yyyy-MM-dd HH:mm:ss} [%logger]-[%le] - %m%n</pattern>
		</encoder>
	</appender>

	<!-- 数据处理量记录写入目的地  -->
	<appender name="COUNTER_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<File>${log.base}/status.log</File>
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<fileNamePattern>${log.base}/status-%d{yyyy-MM-dd-HH}.log</fileNamePattern>
		</rollingPolicy>
		<!-- 编码格式解析器 -->
		<encoder>
			<pattern>%date{yyyy-MM-dd HH:mm},%m%n</pattern>
		</encoder>
	</appender>
	
	<!-- 数据处理量日志   -->
	<logger name="counter" level="INFO" additivity="false">
		<appender-ref ref="COUNTER_FILE" />
	</logger>

	<!-- 数据处理量记录写入目的地  -->
	<appender name="queue" class="ch.qos.logback.classic.AsyncAppender">
		<discardingThreshold>0</discardingThreshold>
	      <queueSize>10000</queueSize>
	      <appender-ref ref="console" />
	</appender>

	<root level="INFO">
		<!-- <appender-ref ref="file" /> -->
		<appender-ref ref="queue" />
	</root>

</configuration>

 

 

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<!-- 日志存储路径 -->
	<substitutionProperty name="log.base" value="/logs/status" /> 
	<!--appender 输出目的地 file 文件   -->
	<appender name="ROLLING_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<File>${log.base}/status.log</File>
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<fileNamePattern>${log.base}/status-%d{yyyy-MM-dd-HH}.log</fileNamePattern>
			<maxHistory>12</maxHistory>
		</rollingPolicy>
		<!-- 编码格式解析器 -->
		<encoder>
			<pattern>%date{yyyy-MM-dd HH:mm:ss} [%logger{5}]-[%le] - %m%n</pattern>
		</encoder>
	</appender>
		
	<!-- 数据处理量记录写入目的地  -->
	<appender name="COUNTER_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<File>${log.base}/status-l.log</File>
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<fileNamePattern>${log.base}/status-l-%d{yyyy-MM-dd}.log</fileNamePattern>
		</rollingPolicy>
		<!-- 编码格式解析器 -->
		<encoder>
			<pattern>%date{yyyy-MM-dd-HH},%m%n</pattern>
		</encoder>
	</appender>
	<!-- 数据处理量日志   -->
	<logger name="counter" level="INFO" additivity="false">
		<appender-ref ref="COUNTER_FILE" />
	</logger>
	
	<!-- 日志级别 -->
	<root level="INFO">
		<appender-ref ref="ROLLING_FILE" />
	</root>
</configuration>

 

分享到:
评论

相关推荐

    logback-async-appender:Logback示例代码,以显示logback JMS异步追加器

    2. **异步Appender**:Logback允许配置异步Appender,这样日志事件不会立即写入目标(如文件、数据库或JMS),而是先放入队列,由单独的线程处理,避免了日志处理对应用程序性能的影响。 3. **JMS(Java消息服务)*...

    logback例子

    8. **异步日志**:Logback支持异步日志记录,通过AsyncAppender可以提高日志性能,避免阻塞应用程序。 9. **日志性能**:Logback相对于其他日志框架(如Log4j)有更高的性能,因为它在设计时就考虑了效率和资源利用...

    logback类库.rar

    一个典型的`logback.xml`示例如下: ```xml &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"&gt; &lt;pattern&gt;%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n ...

    logback日志配置

    5. **将日志异步写入数据库**:这部分配置也未完整给出,一般涉及使用 `DBAppender` 来将日志记录同步到数据库。 #### 五、总结 本文详细介绍了 logback 日志配置的基本原理和具体实现方法,包括必要的依赖包、XML...

    SpringBoot中自定义日志配置logback-spring.xml示例源码

    若要将日志写入文件,可以创建一个`FileAppender`: ```xml &lt;appender name="FILE" class="ch.qos.logback.core.FileAppender"&gt; &lt;file&gt;logs/app.log &lt;pattern&gt;%d{HH:mm:ss.SSS} [%thread] %-5level %logger{...

    logback-demo.rar

    除了基本的日志功能,Logback还支持日志过滤、异步日志记录、日志切割、日志归档等多种高级特性。例如,TimeBasedRollingPolicy可以按照时间自动滚动和归档日志文件,确保日志数据的有序管理和存储。 总的来说,...

    logback日志配置demo

    一个基本的 `logback.xml` 示例可能如下: ```xml &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"&gt; &lt;pattern&gt;%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n ...

    Logback配置文件根据 LEVEL级别将日志分类保存到不同文件.docx

    本文将详细介绍如何通过配置logback-spring.xml文件,实现日志按照级别分类存储,以及利用异步输出提升日志处理性能。 1. 日志输出到文件并分类 在Logback中,我们可以通过配置不同的`appender`来控制日志输出的...

    logback做日志(代码演示和文档)

    2. **异步日志记录**:logback 提供了异步日志记录的选项,可以提高日志处理效率。 3. **日志归档**:通过TimeBasedRollingPolicy,logback 可以定期滚动和归档日志文件。 4. **MDC(Mapped Diagnostic Context)*...

    logback 使用

    5. **异步日志**: 如果需要提高日志性能,可以启用异步日志记录。引入 `logback-classic` 的依赖,并在配置中使用 `AsyncAppender` 类。 6. **自定义 Appender 和 Layout**: 如果标准的 Appender 或 Layout 不满足...

    LoggerPoC:在SpringBoot中使用Logback的示例

    除了基本配置,Logback还支持更高级的特性,比如日志文件大小限制、自动滚动、异步日志记录等。例如,我们可以使用SizeBasedRollingPolicy来实现按文件大小滚动: ```xml &lt;appender name="FILE" class="ch.qos....

    Tomcat日志catalina.out过大解决方案--使用logback按日轮转.rar

    同时,`Logback`还支持其他高级特性,如异步日志处理、日志过滤、自定义日志格式等,能够提供更精细的日志管理和分析能力。 总之,通过引入`Logback`并进行合理配置,我们可以有效解决`Tomcat`日志`catalina.out`过...

    logback高级使用例子

    Logback还支持异步日志写入,通过`AsyncAppender`可以在不阻塞主线程的情况下处理日志,提高应用性能: ```xml &lt;appender name="ASYNC_FILE" class="ch.qos.logback.classic.AsyncAppender"&gt; ``` **日志回滚和...

    logback日志工具

    以下是一个简单的`logback.xml`示例: ```xml &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"&gt; &lt;pattern&gt;%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n ``` ...

    SpringBoot Logback配置,SpringBoot日志配置

    除了基础配置,Logback还支持动态日志级别、过滤器、异步日志记录、自定义编码器和更多高级功能。例如,你可以根据环境变量或属性文件动态调整日志级别: ```xml ... !dev"&gt; ... ``` 在上述代码中,...

    logback.zip包

    除了基础功能外,Logback 还提供了一些高级特性,如异步日志记录、过滤器(Filter)和 MDC(Mapped Diagnostic Context),以增强日志系统的性能和灵活性。过滤器允许开发者根据特定条件过滤日志事件,而 MDC 则可以...

    日志框架logback的Jar包和xml文件

    例如,以下是一个简单的`logback.xml`配置示例: ```xml &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"&gt; &lt;pattern&gt;%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n ...

    Java的日志配置文件 logback.xml

    在实际项目中,`logback.xml`的配置可能更复杂,包括日志文件的滚动策略、日志分割、异步日志处理、日志发送到远程服务器等高级功能。理解并熟练掌握`logback.xml`的配置,对于优化日志记录、提高问题排查效率至关...

    使用maven实现web端上传和下载功能,并配有logback日志

    在开发Web应用时,文件的上传和下载是常见的功能需求,尤其在...综上所述,这个项目涵盖了Maven项目管理、Spring MVC Web开发、文件上传下载处理以及日志记录等关键知识点,为开发者提供了一个完整的Web文件操作示例。

    java日志框架

    此外,Logback还支持异步日志记录,进一步提高了性能。 7. **最佳实践** - 为了遵循“日志应该易读且不影响性能”的原则,我们应该根据需要选择合适的日志级别,避免过度记录导致性能下降。 - 使用PatternLayout...

Global site tag (gtag.js) - Google Analytics