Traffic bill - usefulness of the predicted column for CDR bills

On the billing page there is a ‘predicted’ value for each bill.

I’m using bills in CDR mode, not quota, initially I thought it was predicting bandwidth usage - because it was in bps. The values I’ve been observing for it seemed out of the ordinary (too high) so I decided to investigate.

I found the issue(https://github.com/librenms/librenms/issues/3847#ref-commit-825ef95) on Github where it was originally implemented and it seems that it was meant to predict data usage.

The code that generates this value takes the total traffic or the current 95% average (depending on whether the bill is CDR or quota), divides it by the number of days since the billing period started, then multiplies that by the total number of days in the billing period.

This is fine for a bill in quota mode, but doesn’t make sense to me to do that math on the current 95% rate - the algorithm is designed for a cumulative number, applying it to a non-cumulative number doesn’t make sense and leads to confusion.

I think there should be a separate version of the prediction calculation for the two types of bills, or the feature should be removed for bills that are the CDR type. In its current state no valuable information is conveyed for CDR bills.

3 Likes

I concur with your idea. Not sure exactly how much resource calculation takes, and it the gains will outweigh the amount of work it will take. What I can only think is for small environments people will go with “yeah, whatever. Doesn’t make such a big impact anyway”. But once you start scaling, every small percentage of wasted resource accumulates quite quickly.

It also presents confusion and general doubt about the application. If it isn’t going to be a useful metric, don’t display it.