Only check once after max buffer size is reached
Only check once after max buffer size is reached

We only need to drain the remaining items in the buffer after we stopped
receiving more metrics on the channel. We do not need to do that
continuously for 2 reasons:

1) If we no longer receive that much points to fill up the buffer
whenever we receive the next point, the maxemission interval will take
care of this by sending out all what we have in buffer and we still have
the issue of missing the rollup window if we do not send quick enough,
in which case you need to consider decreasing your buffer size.

2) If we reach max buffer capacity it could mean we either have items in
the queue left to drain or that we will keep filling it up to max
capacity, that is also fine since we will just empty it quicker for you.
If that is an issue, well increase the buffer flush interval or set it
to any int <= 0 and it will default to maxint.

One final VERY IMPORTANT piece of information. DO not set your emissio
interval equal to your rollup window since it is impossibel to time them
both perfectly. Set your emission interval instead a couple of seconds
less than the rollup window resultion.

qnib/QNIBCollect,qnib/QNIBCollect,qnib/QNIBCollect,qnib/QNIBCollect