parent
a2feba21de
commit
cf9fd9bb5f
|
@ -29,7 +29,8 @@ in their config file.
|
||||||
- [#2078](https://github.com/influxdata/telegraf/pull/2078): Ping input: add standard deviation field.
|
- [#2078](https://github.com/influxdata/telegraf/pull/2078): Ping input: add standard deviation field.
|
||||||
- [#2121](https://github.com/influxdata/telegraf/pull/2121): Add GC pause metric to InfluxDB input plugin.
|
- [#2121](https://github.com/influxdata/telegraf/pull/2121): Add GC pause metric to InfluxDB input plugin.
|
||||||
- [#2006](https://github.com/influxdata/telegraf/pull/2006): Added response_timeout property to prometheus input plugin.
|
- [#2006](https://github.com/influxdata/telegraf/pull/2006): Added response_timeout property to prometheus input plugin.
|
||||||
- [#1763](https://github.com/influxdata/telegraf/issues/1763): Pulling github.com/lxn/win's pdh wrapper into telegraf
|
- [#1763](https://github.com/influxdata/telegraf/issues/1763): Pulling github.com/lxn/win's pdh wrapper into telegraf.
|
||||||
|
- [#1898](https://github.com/influxdata/telegraf/issues/1898): Support negative statsd counters.
|
||||||
|
|
||||||
### Bugfixes
|
### Bugfixes
|
||||||
|
|
||||||
|
|
|
@ -426,8 +426,8 @@ func (s *Statsd) parseStatsdLine(line string) error {
|
||||||
|
|
||||||
// Parse the value
|
// Parse the value
|
||||||
if strings.HasPrefix(pipesplit[0], "-") || strings.HasPrefix(pipesplit[0], "+") {
|
if strings.HasPrefix(pipesplit[0], "-") || strings.HasPrefix(pipesplit[0], "+") {
|
||||||
if m.mtype != "g" {
|
if m.mtype != "g" && m.mtype != "c" {
|
||||||
log.Printf("E! Error: +- values are only supported for gauges: %s\n", line)
|
log.Printf("E! Error: +- values are only supported for gauges & counters: %s\n", line)
|
||||||
return errors.New("Error Parsing statsd line")
|
return errors.New("Error Parsing statsd line")
|
||||||
}
|
}
|
||||||
m.additive = true
|
m.additive = true
|
||||||
|
|
|
@ -197,6 +197,8 @@ func TestParse_Counters(t *testing.T) {
|
||||||
"sample.rate:1|c|@0.1",
|
"sample.rate:1|c|@0.1",
|
||||||
"sample.rate:1|c",
|
"sample.rate:1|c",
|
||||||
"scientific.notation:4.696E+5|c",
|
"scientific.notation:4.696E+5|c",
|
||||||
|
"negative.test:100|c",
|
||||||
|
"negative.test:-5|c",
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, line := range valid_lines {
|
for _, line := range valid_lines {
|
||||||
|
@ -230,6 +232,10 @@ func TestParse_Counters(t *testing.T) {
|
||||||
"sample_rate",
|
"sample_rate",
|
||||||
11,
|
11,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"negative_test",
|
||||||
|
95,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range validations {
|
for _, test := range validations {
|
||||||
|
@ -299,11 +305,9 @@ func TestParse_InvalidLines(t *testing.T) {
|
||||||
"i.dont.have.a.pipe:45g",
|
"i.dont.have.a.pipe:45g",
|
||||||
"i.dont.have.a.colon45|c",
|
"i.dont.have.a.colon45|c",
|
||||||
"invalid.metric.type:45|e",
|
"invalid.metric.type:45|e",
|
||||||
"invalid.plus.minus.non.gauge:+10|c",
|
|
||||||
"invalid.plus.minus.non.gauge:+10|s",
|
"invalid.plus.minus.non.gauge:+10|s",
|
||||||
"invalid.plus.minus.non.gauge:+10|ms",
|
"invalid.plus.minus.non.gauge:+10|ms",
|
||||||
"invalid.plus.minus.non.gauge:+10|h",
|
"invalid.plus.minus.non.gauge:+10|h",
|
||||||
"invalid.plus.minus.non.gauge:-10|c",
|
|
||||||
"invalid.value:foobar|c",
|
"invalid.value:foobar|c",
|
||||||
"invalid.value:d11|c",
|
"invalid.value:d11|c",
|
||||||
"invalid.value:1d1|c",
|
"invalid.value:1d1|c",
|
||||||
|
|
Loading…
Reference in New Issue