zoukankan      html  css  js  c++  java
  • logback配置异步日志

    <appender name="FILE" class= "ch.qos.logback.core.rolling.RollingFileAppender">  
                <!-- 按天来回滚,如果需要按小时来回滚,则设置为{yyyy-MM-dd_HH} -->  
                <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
                     <fileNamePattern>/opt/log/test.%d{yyyy-MM-dd}.log</fileNamePattern>  
                     <!-- 如果按天来回滚,则最大保存时间为1天,1天之前的都将被清理掉 -->  
                     <maxHistory>30</maxHistory>  
                <!-- 日志输出格式 -->  
                <layout class="ch.qos.logback.classic.PatternLayout">  
                     <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n</Pattern>  
                </layout>  
    </appender>  
         <!-- 异步输出 -->  
         <appender name ="ASYNC" class= "ch.qos.logback.classic.AsyncAppender">  
                <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 -->  
                <discardingThreshold >0</discardingThreshold>  
                <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 -->  
                <queueSize>512</queueSize>  
                <!-- 添加附加的appender,最多只能添加一个 -->  
             <appender-ref ref ="FILE"/>  
         </appender>  
           
         <root level ="info">  
                <appender-ref ref ="ASYNC"/>  
         </root>  

    异步配置参数:

    属性名 类型 描述
    queueSize int BlockingQueue的最大容量,默认情况下,大小为256。
    discardingThreshold int 默认情况下,当BlockingQueue还有20%容量,他将丢弃TRACE、DEBUG和INFO级别的event,只保留WARN和ERROR级别的event。为了保持所有的events,设置该值为0。
    includeCallerData boolean 提取调用者数据的代价是相当昂贵的。为了提升性能,默认情况下,当event被加入到queue时,event关联的调用者数据不会被提取。默认情况下,只有"cheap"的数据,如线程名。
  • 相关阅读:
    Python之迭代器,生成器
    Python函数--装饰器进阶
    Python之函数的本质、闭包、装饰器
    Python之函数--命名空间、作用域、global、nonlocal、函数的嵌套和作用域链
    Python函数的定义与调用、返回值、参数
    Python之文件操作
    Python之集合
    基本数据类型补充,深浅copy
    Python基础-元组、列表、字典
    Python常用模块(一)
  • 原文地址:https://www.cnblogs.com/yangzhilong/p/10577613.html
Copyright © 2011-2022 走看看