Now I got who is confusing me.
But first, let me tell the result of what did you say.
First, I append "group" to my promtheus.yml. but it doesn't affect my prometheus wrong measurement.
Here is the prometheus.yml snippet
--------------------------------------------------------------------------------
- job_name: "sflow-rt-exporter"
...
t: ['10']
group: ['this']
--------------------------------------------------------------------------------
Secondly, I installed apps: browse-flows, browse-metrics, sflow-test and tested it.
this is browse-flows, key: ipsource (and ipdestination, too), value: bps.
As I mentioned at my reply, the graph lasts a few even the iperf3 ended up already.
the "bps" resulted well, but prometheus is still wrong.
Third, test with ipbytes or udpbytes/tcpbytes.
this is "ipbytes"
ip bytes shows the same graph form while tcpbytes, udpbytes doesn't work.
So I tried to configure prometheus.yml value to "ipbytes" so that I can measure the exact bytes.
--------------------------------------------------------------------------------
- job_name: "sflow-rt-exporter"
...
value: ['ipbytes']
...
t: ['10']
group: ['this']
--------------------------------------------------------------------------------
But it still exceeded the exact bytes(715MB).
Lastly, I tried to test it with browse-metrics and sflow-test (cross-check)
Still vague, the prometheus says wrong number.
But finally I figured out what makes this happening.
I mean, prometheus result keep increasing even the iperf test ended up.
It's because of the "t" parameter which means "smoothing level or time".
It makes the graph's end round and increases the counts number, I guess.
So I tested it with various "t" values (in prometheus.yml) and its result says:
t = 500 (maximum), the increment lasts 48minutes,
t = 10, the increment lasts 3 minutes, prometheus measurement: 888.131557MB
t = 1, the increment lasts 70~75 seconds, prometheus measurement: 802.036606MB
t = 0.8, the increment lasts 70~75 seconds, prometheus measurement: 812.605983MB (it increased)
t = 0.5, the increment lasts 70~75 seconds, prometheus measurement: varies. 1,207.39316MB, 1,018.61167MB, 852.924301MB, 1,110.31862MB
I concluded that this problem is related with "t" value.
It is the level of smoothing. (I already read the article)
But still don't know how to fix it.
And since my network users have a variety range of traffic, it is unable to find the best "t" value.
I guess I should write a program which utilize the flow record bytes.
Is my guess correct?