带有geoip过滤器的Logstash xdb输出

带有geoip过滤器的Logstash xdb输出,logstash,elastic-stack,influxdb,geoip,Logstash,Elastic Stack,Influxdb,Geoip,我正在尝试使用logstash geoip筛选器通过InfluxDB输出插件向InfluxDB发送关于IP地址位置的数据 我的日志存储配置文件是: input { file { path => "/root/geoip_test.txt" start_position => "beginning" } } filter { geoip { source => "message"

我正在尝试使用logstash geoip筛选器通过InfluxDB输出插件向InfluxDB发送关于IP地址位置的数据

我的日志存储配置文件是:

input {
  file {
    path => "/root/geoip_test.txt"
    start_position => "beginning"
  }
}

filter {
  geoip {
    source => "message"
    fields => ["latitude", "longitude"]
  }
}

output {
  stdout {codec => rubydebug}
  influxdb {
    host => "localhost"
    port => 8086
    db => "metrics"
    measurement => "geoip_test"
    codec => "json"
    use_event_fields_for_data_points => true
  }
}
geoip_test.txt文件仅包含一个IP地址:

14.143.35.10

我收到的错误输出为:

[2020-09-07T12:26:26,696][INFO ][logstash.agent           ] Successfully started Logstash API endpoint {:port=>9600}
{
         "geoip" => {
         "latitude" => 12.9771,
        "longitude" => 77.5871
    },
       "message" => "14.143.35.10",
          "path" => "/root/geoip_test.txt",
    "@timestamp" => 2020-09-07T10:26:33.963Z,
          "host" => "test",
      "@version" => "1"
}
[2020-09-07T12:26:34,942][WARN ][logstash.outputs.influxdb][main][941178b6897abb80f9a5f7654e5e62ba752d5e20b68781bc62b466e489c2ce56] Non recoverable exception while writing to InfluxDB {:exception=>#<InfluxDB::Error: {"error":"unable to parse 'geoip_test,host=test geoip={\"latitude\"=\u003e12.9771, \"longitude\"=\u003e77.5871},path=\"/root/geoip_test.txt\" 1599474393963': invalid boolean"}
>}
[2020-09-07T12:26:26696][INFO][logstash.agent]已成功启动logstash API端点{:port=>9600}
{
“geoip”=>{
“纬度”=>12.9771,
“经度”=>77.5871
},
“消息”=>“14.143.35.10”,
“路径”=>“/root/geoip_test.txt”,
“@timestamp”=>2020-09-07T10:26:33.963Z,
“主机”=>“测试”,
“@version”=>“1”
}
[2020-09-07T12:26:34942][WARN][logstash.outputs.influxdb][main][941178b6897abb80f9a5f7654e5e62ba752d5e20b68781bc62b466e489c2ce56]写入influxdb时发生不可恢复异常{:异常=>#
我认为geoip过滤器会生成一些XDB无法处理的布尔字段

有人知道该怎么办吗?是否可以以某种方式设置geoip过滤器,使其不会生成除lon和lat字段以外的任何内容


非常感谢您的帮助

您已经只保留了由
geoip
过滤器生成的
纬度
经度
字段,这就是
字段
数组所做的。生成的所有字段都在
stdout
输出中,可能是被视为布尔值的
@version
字段?尝试使用
mutate
过滤器删除它。谢谢回复!我已经删除了@version字段,但没有任何帮助((当我从文件中摄取一些日志并用logstash解析它们时,在我添加geoip过滤器之前没有问题,所以我认为问题在哪里。我尝试了很多配置选项,包括删除和添加一些字段或更改数据类型,但没有任何帮助。