您现在的位置是:首页 > 文章详情

Fluent Bit v4.0.4 发布

日期:2025-07-21点击:20

Fluent Bit v4.0.4 现已发布。本版本引入了强大的 OpenTelemetry 接口,提升编码解码能力;增强 Lua 脚本支持 OTLP 元数据访问;支持非 UTF-8 日志的字符编码转换;新增 AWS IAM 对 Kafka/MSK 的支持,同时带来性能提升、NFS-tail 修复及其他多项改进。

新的 OpenTelemetry 接口

Fluent Bit 持续强化作为现代 OpenTelemetry 数据管道的地位。v4.0.4 中新增内部 OpenTelemetry 接口,专注于编码和解码处理,使 OTLP 日志处理更快、更安全、更易测试。

主要改进:

  • JSON 与 Protobuf OTLP 统一处理

  • 输入、处理、输出阶段职责更清晰

  • 更好的单元测试与编码错误报告

  • out_opentelemetry 和 in_opentelemetry 新增自定义 logs_body_key 支持,方便按需构建 OTLP 日志体

此基础为跟踪、指标、日志的强力接入打下坚实基础,使 Fluent Bit 成为 OTLP 原生环境中可靠的转发器。

Lua 过滤器新能力:OTLP 元数据及分组访问

v4.0.4 中,Lua 过滤器支持 OpenTelemetry,能进行更灵活的记录级和分组级处理。适合根据资源或范围属性动态修改 OTLP 日志。

新函数签名:

 function cb(tag, timestamp, group, metadata, record) 

你可以做:

  • 注入 resource.attributes(如 service.name)到日志记录

  • 修改 OTLP 严重级别或标签

  • 每次调用返回多条记录和元数据

  • 简单脚本和复杂脚本兼容

示例:调整 OTLP 严重级别并添加服务名

 function cb(tag, ts, group, metadata, record)   if group['resource']['attributes']['service.name'then     record['service_name'] = group['resource']['attributes']['service.name'] end if metadata['otlp']['severity_number'] == 9then     metadata['otlp']['severity_number'] = 13     metadata['otlp']['severity_text'] = 'WARN' end return1, ts, metadata, record end 

兼容 OpenTelemetry Collector 日志和所有 OTLP 日志生产者。

亚洲市场编码支持:原生转码

亚洲很多组织日志仍用 GBK、Big5、Shift_JIS 等编码,发送到 UTF-8 后端时会出现乱码。

Fluent Bit 现在在 in_tail 中集成了原生字符编码引擎。通过 generic.encoding 属性,可在读取时直接转码为 UTF-8。

示例:GBK 转 UTF-8

 pipeline:   inputs:     -name:tail       path:/var/log/my_legacy_app.log       parser:json       generic.encoding:GBK outputs:     -name:stdout 

确保 Elasticsearch、OpenSearch、S3 等后端收到干净的 UTF-8 日志。非常适合 Fluentd → Fluent Bit 平滑迁移。

Kafka + AWS MSK IAM + 性能提升

Fluent Bit 新增对 Amazon MSK 的 AWS IAM 认证支持(输入和输出插件均支持)。

亮点:

  • 使用 OAuthBearer 的 AWS SigV4 签名

  • 支持 EC2 IAM 角色、STS 令牌和无服务器 MSK

  • 基于 librdkafka 实现无状态令牌刷新

无需在配置中存储凭证,只需 IAM 即可。

额外功能:Kafka 输入支持 enable_auto_commit

Kafka 消费者支持:

 enable_auto_commit: true 
  • false(默认)= 安全优先,处理完毕后提交

  • true = 性能优先,批量提交,提高吞吐

适合能容忍重复消费、追求最大吞吐的场景。

in_tail 文件轮转改进(NFS 友好)

NFS 或远程挂载的日志文件轮转和覆盖常带来问题。

v4.0.4 中,in_tail 改用 fstat() 判断轮转,更适用于:

  • 网络文件系统(NFS)

  • 集中日志目录

  • 容器卷挂载环境

防止文件移动或轮转时日志重复、丢失或漏采。

其他亮点

插件:

  • out_opentelemetry:重试、元数据合并和分组修复

  • out_loki:避免多工作线程使用 Remove_Keys 时的竞态

  • filter_modify / filter_lua:内存修复和清理

  • in_kafka / out_kafka:改进 AWS MSK 集成和令牌验证

核心与构建系统:

  • librdkafka 升级到 v2.10.1

  • 新增编码、过滤器、上游行为测试

  • 优化上游连接复用逻辑

  • 安装器支持 Rocky Linux 和 AlmaLinux

  • 全面代码清理和内存泄漏修复

原文链接:https://www.oschina.net/news/361476/fluent-bit-4-0-4-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章