logback 打印日志模板参考,包含异步打印日志及历史日志压缩

<?xml version="1.0" encoding="UTF-8"?>
<configuration><!-- 属性 --><!-- 服务名称 --><property name="serviceName" value="ai-flow"/><!-- 日志保留天数 --><property name="maxHistory" value="15"/><!-- 彩色日志 --><!-- 彩色日志依赖的渲染类 --><conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/><conversionRule conversionWord="wex"converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/><conversionRule conversionWord="wEx"converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/><!-- 彩色日志格式 --><property name="CONSOLE_LOG_PATTERN"value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/><!-- 默认的控制台日志输出,一般生产环境都是后台启动,这个没太大作用 --><appender name="CONSOLE-LOG" class="ch.qos.logback.core.ConsoleAppender"><param name="Encoding" value="UTF-8"/><layout class="ch.qos.logback.classic.PatternLayout"><!--<pattern>%date [%thread] %-5level %logger{50}:%L - %msg%n</pattern>--><pattern>${CONSOLE_LOG_PATTERN}</pattern></layout></appender><!-- 收集除 error 级别以外的日志 --><appender name="INFO-LOG" class="ch.qos.logback.core.rolling.RollingFileAppender"><param name="Encoding" value="UTF-8"/><!--<filter class="ch.qos.logback.classic.filter.LevelFilter"><level>ERROR</level><onMatch>DENY</onMatch><onMismatch>ACCEPT</onMismatch></filter><File>logs/info/${serviceName}-info.log</File><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><FileNamePattern>logs/history/info/service.%d{yyyy-MM-dd}.info-log.gz</FileNamePattern><maxHistory>${maxHistory}</maxHistory></rollingPolicy>--><File>logs/${serviceName}.log</File><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><FileNamePattern>logs/history/info/service.%d{yyyy-MM-dd}.log.gz</FileNamePattern><maxHistory>${maxHistory}</maxHistory></rollingPolicy><layout class="ch.qos.logback.classic.PatternLayout"><pattern>%date [%thread] %-5level %logger{50}:%L - %msg%n</pattern></layout></appender><!-- 收集 error 级别的日志 --><appender name="ERROR-LOG" class="ch.qos.logback.core.rolling.RollingFileAppender"><param name="Encoding" value="UTF-8"/><filter class="ch.qos.logback.classic.filter.ThresholdFilter"><level>ERROR</level></filter><File>logs/error/${serviceName}-error.log</File><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><FileNamePattern>logs/history/error/service.%d{yyyy-MM-dd}.error-log.gz</FileNamePattern><maxHistory>${maxHistory}</maxHistory></rollingPolicy><layout class="ch.qos.logback.classic.PatternLayout"><pattern>%date [%thread] %-5level %logger{50}:%L - %msg%n</pattern></layout></appender><!-- 异步输出 --><appender name="ASYNC-INFO" class="ch.qos.logback.classic.AsyncAppender"><!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --><discardingThreshold>0</discardingThreshold><!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --><queueSize>256</queueSize><!-- 添加附加的appender,最多只能添加一个 --><appender-ref ref="INFO-LOG"/></appender><appender name="ASYNC-ERROR" class="ch.qos.logback.classic.AsyncAppender"><!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --><discardingThreshold>0</discardingThreshold><!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --><queueSize>256</queueSize><!-- 添加附加的appender,最多只能添加一个 --><appender-ref ref="ERROR-LOG"/></appender><!-- 修改其他包的日志输出级别 --><logger name="com.xxx.xxx" level="INFO"/><logger name="com.xxx.xxx.test" level="DEBUG"/><!-- root 默认日志配置 , 注意这里的级别哈!小心生产环境用 DEBUG,压爆你的磁盘!--><root level="INFO"><!-- 控制台日志 --><appender-ref ref="CONSOLE-LOG"/><!-- 同步输出文件日志 --><!--        <appender-ref ref="INFO-LOG"/>--><!--        <appender-ref ref="ERROR-LOG"/>--><!-- 异步输出文件日志 --><appender-ref ref="ASYNC-INFO"/><!--        <appender-ref ref="ASYNC-ERROR"/>--></root>
</configuration>

logback 打印日志参考,包含异步打印日志及历史日志压缩相关推荐

  1. java 多线程 异步日志_精彩技巧(1)-- 异步打印日志的一点事

    一.前言 最近刚刚结束转岗以来的第一次双11压测,收获颇多,难言言表, 本文就先谈谈异步日志吧,在高并发高流量响应延迟要求比较小的系统中同步打日志已经满足不了需求了,同步打日志会阻塞调用打日志的线程, ...

  2. fmt打印不显示 go_程序猿学Go: 日志系统

    一:log日志包 Golang的log包短小精悍,可以非常轻松的实现日志打印转存功能.不用多说,log支持并发操作(即协程安全-相对于JAVA中的线程安全而言),其结构定义如下: type Logge ...

  3. 别在 Java 代码里乱打日志了,这才是正确的日志打印姿势!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 转自:公众号   石杉的架构笔记  作者:Lrwin 打日志的正确 ...

  4. java注释日志打印_java 注解结合 spring aop 实现自动输出日志

    auto-log auto-log 是一款为 java 设计的自动日志监控框架. 创作目的 经常会写一些工具,有时候手动加一些日志很麻烦,引入 spring 又过于大材小用. 所以希望从从简到繁实现一 ...

  5. syslog打印不带等级_syslog之一:Linux syslog日志系统详解

    目录: 一.syslog简介 syslog是一种工业标准的协议,可用来记录设备的日志.在UNIX系统,路由器.交换机等网络设备中,系统日志(System Log)记录系统中任何时间发生的大小事件.管理 ...

  6. android日志打印机制,Android4_使用Log打印

    一.Log介绍: Android中的日志工具类是Log(android.util.Log),这个类中提供了如下5个方法来供我们打印日志. Log.v() .用于打印那些最为琐碎的.意义最小的日志信息. ...

  7. python日志,支持彩色打印和文件大小切片写入和写入mongodb

    1.项目中使用了自定义的ColorHandler和MongoHandler,使用了内置的RotatingFileHandler和三方库的ConcurrentRotatingFileHandler. 支 ...

  8. 当当网电子书能打印吗_一行代码就能写一个日志打印组件,你信吗?为你揭晓RTOS中日志打印组件的核心

    1. 做实验引发的思考 在学习LiteOS日志打印组件使用的时候,我记录了一篇博客:atiny_log | LiteOS 物联网操作系统中的日志打印组件使用分享,关于实验的具体内容,请阅读这篇博客(点 ...

  9. java 打印日志log_java如何LOG打印出日志信息

    log4j 记录日志方式 log4j 是apache 提供的记录日志的jar 档. 下载路径: 这里要做的事情稍微要多一些: 1. 下载log4j 的jar 包,放入项目的lib 包中(添加到项目的b ...

  10. java 同步 异步 阻塞 非阻塞_Java日志正确使用姿势,大白话搞懂什么是同步/异步/阻塞/非阻塞...

    前言 关于日志,在大家的印象中都是比较简单的,只须引入了相关依赖包,剩下的事情就是在项目中"尽情"的打印我们需要的信息了.但是往往越简单的东西越容易让我们忽视,从而导致一些不该有的 ...

最新文章

  1. 解决360浏览器兼容模式的页面显示问题
  2. websocket创建失败_SpringBoot2.2 实践WebSocket被不靠谱的百度搜索结果坑了多少人
  3. 解决Genymotion运行Android 5.0一直卡在开机界面
  4. 计算机与现代化投稿流程,计算机与现代化投稿须知
  5. a data source instance has not been supplied for the datasource 'dataset1'. rdlc
  6. file.seek()/tell()-笔记
  7. java bean传索引_Java如何设置bean的索引属性值?
  8. 一个简单的C#获取Session、设置Session类文件
  9. MySQLi学习笔记 :二(  排序查询,聚合函数,分组查询,分页查询) 约束     多表之间的关系   范式     数据库的备份和还原
  10. 主线程中慎用WaitForSingleObject (WaitForMultipleObjects)
  11. 学生信息管理系统(附运行效果图和源码下载)分页技术(后台封装json数据传递到前端显示,动态分页等)(Mybatis,json,ajax,jQuery实用整合示例)
  12. siamfc-pytorch代码讲解(二):trainsiamfc
  13. js输出100以内的质数_用JS编写求出100以内的质数
  14. 《数字电子技术基础》5.3/4/5 电平/脉冲/边沿触发的触发器
  15. 程序员个人修养和职业规划
  16. 【数据结构与算法分析1.2】编写一个程序求解字谜游戏问题
  17. vissim交通仿真实验(1)--仿真基础
  18. 空中交通通信控制设备的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  19. RocketMq之削峰
  20. UnsatisfiedDependencyException报错的原因

热门文章

  1. 如何在云上高效地实践“自动化”和“弹性”
  2. 【数据预测】基于matlab人工蜂群算法优化BP神经网络数据预测 (含优化前对比)【含Matlab源码 078期】
  3. 【特征提取】基于matlab熵函数语音端点检测【含Matlab源码 1764期】
  4. 【图像隐写】基于matlab GBT+SVD数字水印嵌入与提取【含Matlab源码 1668期】
  5. 【图像分割】基于matlab GUI图像提取【含Matlab源码 702期】
  6. 【图像分割】基于matlab 2D水平集三维医学图像分割【含Matlab源码 584期】
  7. 【光学】基于matlab多缝夫琅禾费衍射【含Matlab源码 061期】
  8. python智慧树判断题_智慧树_大数据分析的python基础_判断题答案
  9. 注册为linux系统服务,注册程序为Linux系统服务并设置成自启动
  10. 昆仑通态触摸屏数据转发上传_说说昆仑通态(MCGS)的数组功能