influxdata / influxdata/kapacitor
influxDBOut should validate key names
- Dominant language
- Go
- Stars
- 2.4k
- Forks
- 479
- Avg merge
- 4d 16h
- Merged PRs (30d)
- 4
Description
The InfluxDB line protocol spec [says](https://docs.influxdata.com/influxdb/v2.0/reference/syntax/line-protocol/#naming-restrictions) that names of tag keys and field keys can't start with `_`. The `influxDBOut` node should validate that the data it's pushing doesn't include any keys that violate this restriction.
To help with migration of existing scripts that write `_start` etc, we could:
1. Add a new boolean property to set "strictness" (or some other name) of the node, defaulting to `false`
2. Write the new validation logic so that if the node isn't strict, invalid keys are dropped instead of the whole data point being thrown out
Contributor guide
Research direction
Start by locating the influxDBOut node and the code that assembles tag and field keys for InfluxDB line protocol. Define the validation behavior and strictness setting described in the issue, then verify that invalid keys are either dropped or reject the data point according to that setting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- data
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100