You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kafka Connect日志被写入前一天归档文件的异常原因咨询

Kafka Connect日志跨天写入异常原因分析

以下是该异常的核心可能原因:

  • log4j 1.x 原生DailyRollingFileAppender 固有缺陷
    你使用的log4j 1.x版本自带的DailyRollingFileAppender存在经典的滚动逻辑bug:它不会主动检测日期变更,仅在新日志事件产生时才会检查是否需要滚动。同时该实现没有做并发写入控制,多线程写入场景下很容易出现部分线程的日志继续写入旧归档文件的问题。
  • Kafka Connect类加载隔离导致多日志实例冲突
    Kafka Connect默认对每个连接器启用类加载隔离:公共依赖(如你日志中出现的Hadoop UGI类)由全局类加载器加载,连接器业务代码由独立的类加载器加载。如果两个类加载器各自初始化了独立的log4j appender实例,就会出现全局实例触发日志滚动后写入新的connect.log,而连接器实例仍然持有旧归档文件的句柄,继续向旧文件写入业务日志,完全匹配你遇到的日志拆分现象。
  • 滚动窗口期文件操作冲突
    如果你服务器上配置了日志清理、归档脚本,且执行时间刚好在凌晨0点的日志滚动窗口,脚本对旧日志文件的重命名、删除操作会导致log4j appender无法感知文件路径变更,继续向已经被重命名的旧文件句柄写入数据,同时也会出现旧日志文件在文件系统不可见、仅能通过ELK采集到历史数据的现象。

内容的提问来源于stack exchange,提问作者wereallgonna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 08:36:03