Support exec input plugin legacy behavior
This commit is contained in:
parent
ef20f05221
commit
28664fedb2
|
@ -1,9 +1,9 @@
|
||||||
## v0.10.3 [unreleased]
|
## v0.10.3 [unreleased]
|
||||||
|
|
||||||
### Release Notes
|
### Release Notes
|
||||||
- **Breaking Change** all users of the exec plugin must specify
|
- Users of the `exec` and `kafka_consumer` can now specify the incoming data
|
||||||
`data_format = "json"` in the config file for the plugin to continue
|
format that they would like to parse. Currently supports: "json", "influx", and
|
||||||
parsing JSON data as it does now.
|
"graphite"
|
||||||
- More info on parsing arbitrary data formats can be found
|
- More info on parsing arbitrary data formats can be found
|
||||||
[here](https://github.com/influxdata/telegraf/blob/master/DATA_FORMATS_INPUT.md)
|
[here](https://github.com/influxdata/telegraf/blob/master/DATA_FORMATS_INPUT.md)
|
||||||
|
|
||||||
|
|
|
@ -611,7 +611,10 @@ func buildParser(name string, tbl *ast.Table) (parsers.Parser, error) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if c.DataFormat == "" {
|
// Legacy support, exec plugin originally parsed JSON by default.
|
||||||
|
if name == "exec" && c.DataFormat == "" {
|
||||||
|
c.DataFormat = "json"
|
||||||
|
} else if c.DataFormat == "" {
|
||||||
c.DataFormat = "influx"
|
c.DataFormat = "influx"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -92,7 +92,7 @@ func TestConfig_LoadDirectory(t *testing.T) {
|
||||||
"Testdata did not produce correct memcached metadata.")
|
"Testdata did not produce correct memcached metadata.")
|
||||||
|
|
||||||
ex := inputs.Inputs["exec"]().(*exec.Exec)
|
ex := inputs.Inputs["exec"]().(*exec.Exec)
|
||||||
p, err := parsers.NewInfluxParser()
|
p, err := parsers.NewJSONParser("exec", nil, nil)
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
ex.SetParser(p)
|
ex.SetParser(p)
|
||||||
ex.Command = "/usr/bin/myothercollector --foo=bar"
|
ex.Command = "/usr/bin/myothercollector --foo=bar"
|
||||||
|
|
Loading…
Reference in New Issue