On 8 Sep 2015, at 13:30, Matt Wringe <mwringe@redhat.com> wrote:

I am running into a few issues when dealing with bucketed data when
there is no datapoints which happen to fall within a particular bucket size.

For instance, lets say I am getting data every 30 seconds. If my bucket
spans at least 30 seconds than everything works fine and all my buckets
contain non-empty data.

But, if I were to 'zoom in' a bit and ask for a bucket span less than 30
seconds, then some of the buckets would return with empty data.

Or, if my data does not come in perfectly for each of those 30 second
fragments (say the timestamps are plus or minus a couple of seconds)
then I could also end up with some buckets containing empty data as well.

This causes some strange charting behaviour. If a bucket is empty, then
its just not displayed in the chart. This means we can end up with
non-continuous lines in the charts, which is not desired.

Anyone know what should be done in this situation?

Its not really that there is no data there and nothing should be
graphed, its just that the bucket span is too small to show anything in

Should charting just ignore empty buckets if they are not at the start
or the end?

From the charts perspective: In general, No. We use the empty buckets to be interpreted as “Unknown” which means either the agent is down or the resource is down (whereas ‘down’ implies that we know the resource is actually down because the agent monitor tells us so).

Should hawkular metrics perform calculations to figure out what the
missing bucket values should be?

No, again we rely upon the empty buckets to mean no data was collected during that bucket interval.

Any ideas here?

Sounds like the time interval that you are charting is not granular enough for the buckets that you want to display. Is it possible to increase the collection frequency?

Another option is to allow a raw mode that plots individual points and interpolates between the points (but you would give up the ability to show empty ‘no data’ areas, which are just as important, if not more than data points).

BTW It would be useful to see the charts and json dataset to fully understand the issue. Having the json allows us to model the chart exactly as you see in the error condition so we can reproduce and play with it until we are happy with the results.

hawkular-dev mailing list