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

Logstash http filter调用API返回结果解析及字段添加方案咨询

解决方案

完整配置示例

filter {
  # 调整后的http filter配置
  http {
    url => "rest/api/subnet/check_subnet_from_ip/"
    query =>  { "ip" => "%{[source][ip]}" }
    verb => GET
    # 指定API返回结果存储到独立字段,避免污染原有事件字段
    target => "subnet_api_resp"
    # 可选配置:请求失败时自动删除报错字段,避免冗余数据
    remove_field => ["[http_request_failure]"]
  }

  # 提取字段+兼容空返回逻辑
  if [subnet_api_resp][name] {
    mutate {
      add_field => {
        "[subnet][name]" => "%{[subnet_api_resp][name]}"
        "[subnet][cidr]" => "%{[subnet_api_resp][cidr]}"
      }
    }
  } else {
    # 空返回/请求失败时填充默认值,可根据业务需求修改
    mutate {
      add_field => {
        "[subnet][name]" => "N/A"
        "[subnet][cidr]" => "N/A"
      }
    }
  }

  # 可选配置:不需要保留原始API返回结果时可删除该字段
  # mutate {
  #   remove_field => ["subnet_api_resp"]
  # }
}

配置说明

  • http filter默认会自动解析Content-Type为application/json的返回内容,直接转为结构化字段,无需额外加JSON解析插件。如果你的API返回头没有正确标识JSON格式,可以在http filter之后新增一行json { source => "subnet_api_resp" target => "subnet_api_resp" }手动解析返回内容。
  • 分支判断逻辑自动覆盖三种场景:API正常返回子网信息、API返回空对象{}、API请求超时/失败无返回,不会出现字段缺失的问题。
  • 提取后的新字段统一存在subnet结构下,你可以根据需求修改为自定义的字段路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 09:15:03