influxdata / kapacitor

Open source framework for processing, monitoring, and alerting on time series data
MIT License
2.31k stars 493 forks source link

Unable to parse: invalid boolean when sending data from fluentd #2547

Closed xuoguoto closed 3 years ago

xuoguoto commented 3 years ago

I am sending some metrics from fluentd to Kapacitor OSS version 1.5.9 for stream processing. Using fangli/fluent-plugin-influxdb as the fluentd plugin to send data to Kapacitor in version 1 lineformat.

From the packet capture I can see that , this is the line thats being sent to Kapacitor:

nodeexporter09,_seq=6 host={"network"=>{"out"=>{"bytes"=>1329771, "packets"=>457},
 "in"=>{"bytes"=>1309413, "packets"=>461}}, "name"=>"myhost"} 1620454532615

Which gets the error: unable to parse: invalid boolean

Fluentd sends multiple points in a single HTTP request, and all of them are rejected by Kapacitor with same error message.

My questions are:

  1. Is this a valid line in line protocol? I could't find its definition in reference docs, esp the usage of {} and _seq?
  2. If so, what could be the error here

Any update on Kapacitor supporting Influx2.0 line protocol. I am successfully able to send data from fluentd to InfluxDB2.0, but since InfluxDB2.0 do not support streaming, I have to send a copy of data to Kapacitor too.

xuoguoto commented 3 years ago

This was a problem with fluent-plugin-influxdb. Fixed and submitted a PR at https://github.com/fangli/fluent-plugin-influxdb/pull/107.

This issue can be closed.

xuoguoto commented 3 years ago

It would be interested to know when or if Kapacitor can handle Influx2.0 line protocol.