zoukankan      html  css  js  c++  java
  • logback 使用异步和缓存提升日志效率

    主要是使用AsyncAppender 提供异步功能,然后使用 immediteFlush配置使用缓存(缓存8k).
    注意: 高版本的logback 已经指出SizeAndTimeBasedRollingPolicy , 我的版本是1.0.13可以使用SizeAndTimeBasedFNATP实现。
    <?xml version="1.0" encoding="UTF-8"?>  
      
    <configuration>  
        <substitutionProperty name="log.base" value="/home/wtposp/logs" />
        </appender>-->
        <appender name="rollout" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <Encoding>UTF-8</Encoding>   
            <file>${log.base}/wtposp.log</file>
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <fileNamePattern>${log.base}/%d{yyyy-MM-dd}/wtposp-%i.log.zip</fileNamePattern>
                <MaxHistory>30</MaxHistory>
                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <!-- 设置文件大于1KB进行压缩归档 -->
                    <maxFileSize>100MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
            <encoder>
                <pattern>%date{HH:mm:ss} [%X{sysUUID}] %-5level %c{0}:%L - %msg%n</pattern>
                <immediateFlush>false</immediateFlush>
            </encoder>
           
        </appender>  
        
        
        <appender name ="ASYNC" class= "ch.qos.logback.classic.AsyncAppender">
            <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 -->
            <discardingThreshold>0</discardingThreshold>
            <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 -->
            <queueSize>256</queueSize>
            <!-- 添加附加的appender,最多只能添加一个 -->
            <appender-ref ref ="rollout"/>
            <!--<appender-ref ref ="errorAppender"/>-->
        </appender>
        
        <root>  
            <level value="INFO" />
        <appender-ref ref="ASYNC" />
        </root>  
        
    </configuration>
  • 相关阅读:
    tzselect
    tzfile
    ttytype
    tty
    TRUNCATE
    true
    troff
    touch
    Open vSwitch
    Web 在线文件管理器学习笔记与总结(5)修改文件内容
  • 原文地址:https://www.cnblogs.com/zhangchenglzhao/p/11533139.html
Copyright © 2011-2022 走看看