fluent-bit - Fluentbit rewrite_tag 不适用于 JSON 数组
问题描述
我们正在使用 fluent-bit 插件从文件中提取并发送到 HTTP 端点。
示例日志如下所示。
tenant 1 testing 100
输入的配置如下所示。
[INPUT]
Name tail
Path /var/log/input/**/*.log
Tag tenant
Path_Key filename
然后,我们使用 lua 过滤器根据文件路径添加密钥。这按预期工作。
[FILTER]
Name lua
Match *
script /etc/td-agent-bit/test.lua
call extract_id
此时,我们尝试过滤消息并根据tenantid重写标签。
[FILTER]
Name rewrite_tag
Match *
Rule $tenantid ^([a-z]+)-([0-9]+)$ from.$tenantid false
Emitter_Name re_emitted
使用标准输出,如下所示,
[OUTPUT]
Name stdout
Match *
我们验证消息如下所示。
tenant: [1630073320.394812583, {"log"=>"tenant 1 testing 100", "tenantid"=>"tenant1", "filename"=>"/var/log/input/tenant1/file1.log"}]
看起来 rewrite_tag 插件无法按预期工作和更改标签。正则表达式模式有问题吗?对此的任何帮助将不胜感激。
解决方案
推荐阅读
- javascript - 带有饼图js的多行图例标签
- php - 打印一系列字母
- c# - 如何插入/更新列表
作为 SQLite 中实体的成员? - facebook-graph-api - Facebook Ads API - 获取 Instagram 广告帖子的回复
- dart - Flutter - 容器子渲染时的高度动画变化
- nlp - 带有调度的 bot 框架 nlp
- html - 如何在循环中动态调用vbscript中的html表单字段
- php - 忘记不修改原始集合 Laravel 5.7
- protobuf-java - Protobuf3:当对象的所有字段都设置为默认值时会发生什么
- swift4.2 - 为什么编译:let v = UIView()