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

EFK按标签创建索引失效:Fluent-bit推数后Logstash不生成索引

问题排查与修复方案

核心原因分析

Logstash未按标签创建索引的关键问题在于:Fluent-bit未将tag字段注入到发送给Logstash的日志记录中,同时Logstash的条件判断使用了错误的字段名(复数tags而非单数tag)。


步骤1:修改Fluent-bit配置,注入Tag字段

需要在Fluent-bit中添加过滤器,将test-mgmt标签作为字段写入日志记录,并确保输出格式为JSON,让Logstash能正确解析。

修正后的Fluent-bit配置:

[INPUT]
        Name              tail
        Path              /data/logs/RestApiInfoLog*.json
        Tag               test-mgmt
        Refresh_Interval  5
        DB                /data/fluent-bit/test-mgmt-taildb
        read_from_head    true
        Multiline         On
        Mem_Buf_Limit     1048MB
        Buffer_Max_Size   500MB
        Buffer_Chunk_Size 400k
        Parser_Firstline  singleline
        multiline.parser  multiline-regex

# 添加过滤器:将Tag注入日志记录
[FILTER]
        Name record_modifier
        Match test-mgmt
        Record tag test-mgmt

[OUTPUT]
        Name            tcp
        Match           test-mgmt
        Host            xx.xx.xx.xx
        Port            5052
        Format          json  # 确保输出为JSON格式,包含完整日志字段

步骤2:修正Logstash的条件判断

Logstash原配置中使用[tags](复数数组字段),但我们注入的是单数tag字段,需调整条件匹配逻辑:

修正后的Logstash配置:

input {
  tcp {
    port => 5052
    codec => json_lines
  }
}

output{
    # 使用单数tag字段做精确匹配
    if [tag] == "test-mgmt"  {
        elasticsearch {
            hosts => ["https://127.0.0.1:9200"]
            index => "test-mgmt-%{+YYYY.MM.dd}"
            ssl_certificate_verification => false
            user => "xxxxx"
            password => "xxxxxx"
        }
    }

    # 可选:添加stdout输出,验证日志字段是否正确
    stdout {
        codec => rubydebug
    }
}

额外验证步骤

  1. 检查Fluent-bit输出:在Fluent-bit配置中添加stdout输出,确认日志记录包含tag字段:
    [OUTPUT]
            Name stdout
            Match test-mgmt
            Format json_lines
    
  2. 检查Logstash接收数据:通过Logstash的stdout输出(rubydebug格式),确认tag字段存在且值为test-mgmt。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 18:15:04