2
votes

I have been switching from statsd + graphite + grafana to using influxdb instead of graphite. However somehow InfluxDB behaves a bit differently than graphite used to when it comes to missing values.

If a timeseries does not produce new points for a period of time, the plot in Grafana will continue to show the last value written:

enter image description here

This happens even when specifying fill(0) or fill(null) in the query. When using the Data Interface of InfluxDB it also seems to be filling using the previous values:

enter image description here

Since I have some alerting that will be triggered by missing values, having the old values reused disables my alerts.

Any idea on how to fix this?

1
Did you find a work around? I'm also experiencing the same. - Mahn
So far not too much, it appears to be a result from not having fixed timeslots like graphite used to have (where no value = null), so that InfluxDB assumes the same value to be true until a new one comes in. I was hoping that by grouping into 1 minute batches and averaging this would be fixed (no value in group => null average), however this seems not to be the case. Still looking for answers on how to fix this :-) - cdecker

1 Answers

0
votes

If you want to show continuous graph, then there is a hack.

Apply mean() and group by()

For example, something like this:

Select mean("fieldName") from measurement where time > now() -1h group by time(10s) fill(0)