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

修改Filebeat的source字段为admin后,Logstash过滤失效求助

问题与解决方案

我将Filebeat中日志的source字段从access修改为admin并重启了Filebeat服务,但在Logstash中使用grok仅过滤source为admin的日志时,结果为空;过滤source为access的日志却能正常工作。已在Kibana中确认日志的field.source为admin,怀疑遗漏配置环节,希望实现仅对source=admin的日志进行grok匹配与内容拆分。

相关配置

Filebeat配置

- type: log
  enabled: true
  paths:
    - /etc/nginx/log/admin.log

  fields:
    source: admin

Logstash配置

if "admin" in [source]{

mutate{
remove_field => ["event.original"]

}


 grok {
        match => { "message" => "%{IPORHOST:remote_ip} - %{DATA:user_name} \[%{HTTPDATE:time}\] \"%{WORD:method}%{DATA:url} HTTP/%{NUMBER:http_version}\" %{NUMBER:response_code} %{NUMBER:body_sent:bytes} \"%{DATA:referrer}\" \"%{DATA:agent}\" \"%{NUMBER:request_time}\"  \"%{DATA:http_x_forwarded_for}\" %{IPORHOST:http_host} " }
        remove_field => "message"
        remove_field => "event.original"
    }
}

问题原因与解决办法

问题核心:Filebeat默认会把自定义fields下的字段放到[fields][source]路径,而非顶级的[source]字段,导致Logstash里的条件判断"admin" in [source]永远不成立,grok逻辑根本没执行。

方案一:修改Filebeat配置,将自定义字段放到顶级

在Filebeat的日志采集配置中添加fields_under_root: true,让source字段直接成为顶级字段:

- type: log
  enabled: true
  paths:
    - /etc/nginx/log/admin.log
  fields_under_root: true  # 新增该行
  fields:
    source: admin

修改后重启Filebeat服务即可。

方案二:修改Logstash的条件判断路径

将Logstash里的判断条件改为检查[fields][source],同时建议用精确匹配==替代in,避免误匹配:

if [fields][source] == "admin" {
  mutate{
    remove_field => ["event.original"]
  }
  grok {
    match => { "message" => "%{IPORHOST:remote_ip} - %{DATA:user_name} \[%{HTTPDATE:time}\] \"%{WORD:method}%{DATA:url} HTTP/%{NUMBER:http_version}\" %{NUMBER:response_code} %{NUMBER:body_sent:bytes} \"%{DATA:referrer}\" \"%{DATA:agent}\" \"%{NUMBER:request_time}\"  \"%{DATA:http_x_forwarded_for}\" %{IPORHOST:http_host} " }
    remove_field => "message"
    remove_field => "event.original"
  }
}

修改后重启Logstash服务即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 22:40:24