五花八门的日志框架

门面 slf4j   common-log(JCL)

实现 jul(JDK自带)  log4j  logback 等

目前常用的是 slf4j + logback

解决jar包中应用的日志框架各不相同,使用适配器和桥接器可以很好的解决

桥接器命名规范一般是  实现类-over/to-门面 (eg: log4j-over-slf4j)

桥接器实现原理- 已上面jar包为例,桥接器重写了log4j,类名功能都一样,但是实现了slf接口。引入桥接器 排除实现 完美替代log4j的类。

常用SLF4J

不同的框架变成slf4,别的门面通过桥接到slf4j

说下我之前遇到的真实问题,线上qps到了20k左右 大量的日志导致了服务抖动,优化了如下配置

discardThreshold  剩余容量导致了这个值 丢弃日志

queuqSize 同步队列的长度

nevermoreBlock 使用非阻塞方法 offer 默认put

参考了大佬的文章,写的超赞

https://time.geekbang.org/column/article/220307

【日志篇】java日志的桥接器和适配器和异步日志相关推荐

  1. java创建请求拦截器_80.简单Retrofit+RxJava+日志拦截器结合使用

    1.需要使用到的依赖如下(Retrofit\RxJava\RecyclerView\日志拦截器) //only Retrofit(只用Retrofit联网) implementation 'io.re ...

  2. log4j2 异步日志

    Log4j2异步日志 异步日志 log4j2最大的特点就是异步日志,其性能的提升主要也是从异步日志中受益,我们来看看如何使用log4j2的异步日志. 同步日志 异步日志 Log4j2提供了两种实现日志 ...

  3. log4j:踩坑记录:log4j2异步日志无法打印%L %M等位置信息

    问题描述: 最近项目想打印更详细的日志信息,包括打印日志的位置和方法.在log4j2的配置文件中为格式添加%L和%M后,发现并不能打印出行号和方法名. 不了解log4j2配置文件请参考log4j2配置 ...

  4. (七)JVM成神路之GC分代篇:分代GC器、CMS收集器及YoungGC、FullGC日志剖析

    引言 在<GC基础篇>中曾谈到过分代以及分区回收的概念,但基础篇更多的是建立在GC的一些算法理论上进行高谈阔论,而本篇则重点会对于分代收集器的实现进行全面详解,其中会涵盖串行收集器.并行收 ...

  5. Java开发面试题及答案,SpringBoot统一日志处理原理

    <artifactId>slf4j-api</artifactId> <version>1.7.28</version> ``` 按照slf4j官方的说 ...

  6. easyloging 获取日志文件名字_愉快地学Java语言:第十五章 断言与日志

    导读 本文适合Java入门,不太适合Java中高级软件工程师.本文以<Java核心技术基础知识卷I>第10版为蓝本,采用不断提出问题,然后解答问题的方式来讲述.本篇文章只是这个系列中的一篇 ...

  7. 【Mybatis 之应用篇】2_配置解析、属性名问题、日志、分页和注解开发

    文章目录 Mabatis 四.配置解析 1.核心配置文件 2.environments(环境配置)☆ 3.properties(属性)☆ 4.typeAliases(类型别名)☆ 5.settings ...

  8. java怎么连elk_从Java应用程序登录到ELK而无需解析日志

    我想将日志从Java应用程序发送到ElasticSearch,传统方法似乎是在运行应用程序的服务器上设置Logstash,并使用logstash解析日志文件(使用正则表达式-!)并将其加载到Elast ...

  9. Java基础(四)——异常、断言、日志

    文章目录 异常.断言.日志 1 异常 2 断言 3 日志 异常.断言.日志 在Java语言中,给出了3种处理系统错误的机制 抛出一个异常 使用断言 日志 1 异常 Error:程序无法处理的错误,无法 ...

最新文章

  1. 使用 NumPy 的标准化技巧
  2. 中国高校首个Apache开源项目 清华数为物联网时序数据库IoTDB 及可自由组装的大数据软件栈系列组件发布...
  3. python中的简单while循环及逻辑运算符
  4. SharePoint工作流开发点滴(2) - 开发第一个SharePiont工作流: HelloWorldSequential 的注意事项...
  5. JQuery.autocomplete扩展功能:实现多列自动提示
  6. 论文浅尝 | 六篇2020年知识图谱预训练论文综述
  7. jqery 实现滚动图片【三】
  8. 2018 年,JavaScript 都经历了什么?
  9. OpenCV探索之路——图像形态学处理(膨胀、腐蚀、开运算、闭运算)
  10. 安卓11及以上adb命令将冰箱设置为设备管理员
  11. R语言书籍学习02 《R语言数据分析、挖掘建模与可视化》-第一章 R语言必备基础知识
  12. freertos demo2: LED blinky queue 发送消息
  13. python名片系统代码练习并存储到数据库中
  14. win8连接wifi成功但受限制_连接wifi成功但受限制如何解决 连接wifi成功但受限制解决【步骤】...
  15. sangoma 蓝色逍遥盒
  16. 半监督学习模型: 半监督的SVM
  17. baidu进阶训练笔记九20200727
  18. 学习OceanBase|OB-ODBC 驱动和 MySQL 官方 MySQL-ODBC 驱动的使用说明和配置方法
  19. 程序员最怕的四个字:通宵发布!
  20. 网易、华为、美团java工程师社招面经!

热门文章

  1. Linux USB 驱动开发—— 热插拔
  2. 弹性和瞬态故障处理库Polly之重试策略
  3. 定时任务-动态定时任务(springboot+org.quartz)
  4. 上海大学数字媒体创意工程875多媒体技术基础考研经验分享
  5. 【数据结构】两栈共享空间的进一步理解
  6. [LeetCode] 230. Kth Smallest Element in a BST
  7. 一个日本人写的插件:Breath Controller
  8. 翼城中学2021高考成绩查询入口,山西省临汾市翼城中学2020-2021学年高一下学期期中考试物理试题 Word版含答案(11页)-原创力文档...
  9. 网络编程(python语言)
  10. 文本匹配(语义相似度/行为相关性)技术综述