log4j2配置中RollingFile和RollingRandomAccessFile有什么区别

2024-01-11

在我们当前的实现中,其中一台服务器具有为 RollingRandomAccessFile 和另一个 RollingFile 设置的 log4j2 配置。如果可能的话,我想知道两者之间的区别以及各自的优缺点。

Thanks


主要区别在于性能:http://logging.apache.org/log4j/2.x/manual/async.html#FileAppender_vs._RandomAccessFileAppender http://logging.apache.org/log4j/2.x/manual/async.html#FileAppender_vs._RandomAccessFileAppender

RandomAccessFileAppender 始终是缓冲的,而 FileAppender 提供了一个配置开关(bufferedIO)。两者都有一个“immediateFlush”配置选项,以防您想确保消息位于磁盘上(例如审核日志记录)。最后,RandomAccessFileAppender 的默认缓冲区大小更大:256*1024 字节与 FileAppender 的 8*1024 字节(两个附加程序缓冲区大小都可以在配置中设置)。

另一件事是,底层实现在一种情况下使用 RandomAccessFile,在另一种情况下使用 OutputStream(顾名思义)。将 RandomAccessFileAppender 与 unix logrotate 实用程序结合使用时存在一个已知问题(https://issues.apache.org/jira/browse/LOG4J2-354 https://issues.apache.org/jira/browse/LOG4J2-354),Log4j 团队建议您使用 RollingRandomAccessFile 进行翻转,并避免使用 unix logrotate 实用程序。显然 FileAppender 可以与 logrotate 结合使用 - 我们还没有听说任何问题。 (由于问题已经提到了两个附加程序的 Rolling... 变体,因此您已经在做正确的事情,我只是认为我应该提到它。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

log4j2配置中RollingFile和RollingRandomAccessFile有什么区别 的相关文章

随机推荐

  • Delphi中绝对路径和相对路径的转换

    Delphi中有执行绝对相对路径转换的标准函数吗 例如 基本 路径是 C Projects Project1 相对路径是 Shared somefile pas 绝对路径是 C Projects Shared somefile pas 我正
  • IntelliJ 缩短 Cucumber 测试的命令行 [重复]

    这个问题在这里已经有答案了 我在 IntelliJ 中运行 Cucumber 测试时遇到问题 当我尝试运行功能或场景时 出现以下错误 Error running Feature
  • 列名作为 INSERT 语句中的参数

    我想创建一个存储过程我想在表中插入值的地方 但我不知道我必须在哪个字段中插入值以及在运行时我将决定应将值插入哪个字段 我想做的是 insert into Tablename ColumnName Description values Col
  • 如何实现可写流

    我想将数据从 amazon kinesis 流传输到 s3 日志或 Bunyan 日志 该示例使用文件写入流或标准输出 我将如何实现我自己的可写流 this works var file fs createWriteStream my lo
  • 以编程方式更改 Google 翻译下拉菜单

    在一个网站上 我尝试使用以下代码添加谷歌翻译下拉列表 function googleTranslateElementInit new google translate TranslateElement pageLanguage en goo
  • Facebook“点赞按钮”返回 X-Frame-Options Deny

    我正在尝试在博客的每篇文章上添加一个 Facebook 的 点赞按钮 代码粘贴正确 但我收到此错误 Refused to display https www facebook com undefined plugins like php a
  • 用于 32 位 x86 汇编的 DOS 调试程序

    你们中的许多人可能还记得古老的 DOS 程序 debug 尽管它在很多方面都已经过时 但它的好处之一是 人们可以轻松地找到给定指令的字节序列 而无需经历编写程序 编译 反汇编 检查文件内容等步骤 输入指令 然后转储指令地址 遗憾的是 调试
  • 滚动直到元素可见 iOS UI Automation with Xcode 7

    因此 通过新的 Xcode 更新 Apple 改变了我们进行 UI 测试的方式 在工具中 我们使用java脚本函数 isVisible 来确定我们的目标元素是否可见 我正在尝试在 Objective C 中复制它 但我似乎找不到与之等效的东
  • 管道中的控制台输出:Jenkins

    我创建了一个复杂的管道 在每个阶段我都称之为工作 我想查看 Jenkins 某个阶段中每个作业的控制台输出 如何获得 从构建步骤返回的对象可用于查询日志 如下所示 pipeline agent any stages stage test s
  • 为什么我不能在具有类型参数的特征上添加一揽子实现?

    考虑这两个特征 pub trait Foo fn new arg u32 gt Self pub trait Bar p Foo fn with parameter arg u32 parameter P gt Self 我想添加毯子暗示
  • Push Segue 在 iOS 5 中不起作用

    我对 IOS 非常陌生 我正在使用情节提要功能来创建应用程序 这就是我想要的 我有两个视图控制器 一个 ViewController 和两个 ViewController 我在一个 ViewController 中有一个按钮 O 按住 ct
  • 迭代通过域模型上的 linq 查询返回的对象的属性和值

    我在关系数据库中有一个自定义实体 我已通过域模型将其映射到 CLR 因此 通过使用以下语句 我可以通过域模型上的 LINQ 查询将实体从数据库拉入内存 如下所示 var inspection from i in dbContext New
  • 在 swift 中将 JSON 对象解析为字符串数组

    我有以下 Json 响应 language en textAngle 0 orientation Up regions boundingBox 96 29 244 474 lines boundingBox 96 29 58 12 word
  • 使用字符串/分类特征(变量)进行线性回归分析?

    回归算法似乎正在研究以数字表示的特征 例如 该数据集不包含分类特征 变量 如何对这些数据进行回归并预测价格是非常清楚的 但现在我想对包含分类特征的数据进行回归分析 有5特征 District Condition Material Secur
  • -1 * int.MinValue == int.MinValue??这是一个错误吗?

    在 C 中我看到了 1 int MinValue int MinValue 这是一个错误吗 当我尝试实现搜索树时 它真的把我搞砸了 我最终使用了 int MinValue 1 这样我就可以正确地否定它 这不是一个错误 int MinValu
  • Java在C中的易失性?

    我知道使用volatile在爪哇 即 基于维基百科文章 http en wikipedia org wiki Volatile variable 对易失性对象的读取和写入存在全局顺序 多变的 这意味着每个访问易失性字段的线程 将在继续之前读
  • 如何使用 python/distutils 依赖系统命令?

    我正在寻找最优雅的方式来通知我的库的用户他们需要特定的 unix 命令来确保它能够工作 什么时候是我的库提出错误的最佳时间 安装 当我的应用程序调用命令时 在导入我的库时 both 还有你应该如何检测命令是否丢失 if not comman
  • 查看模板代码标签 - asp.net mvc - regd

    在 asp net MVC 视图引擎上下文中 和 之间有什么区别 在MVC2书中给出如下 代码块在视图模板呈现时执行代码 代码块执行其中包含的代码 然后将结果呈现到模板的输出流 什么时候使用第一个 什么时候使用第二个 这本书几乎是正确的 代
  • findViewById(R.id.content) 和 getRootView() 之间的区别[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions findViewById R id
  • log4j2配置中RollingFile和RollingRandomAccessFile有什么区别

    在我们当前的实现中 其中一台服务器具有为 RollingRandomAccessFile 和另一个 RollingFile 设置的 log4j2 配置 如果可能的话 我想知道两者之间的区别以及各自的优缺点 Thanks 主要区别在于性能 h