/derive does essentially take the "difference" of 2 consecutive "bins" - say 5 minute intervals - and if the value is way off (>2^31) , then it assumes it is a wraparound and "corrects" for that.
as for SNMP V2: you need to use a different OID to get the corresponding 64 bit values - really: look on the internet to get those OID numbers in question. (a quick look shows: snmpget -v 2c -c public 14.32.5.18 ifHCInOctets.1 could do the trick for you - maybe you need to modify it for your needs) Martin On 15.05.2013, at 17:34, Shabbir Ahmed wrote: > thanks for your email, before ur msg i tried my self /derive and the graphs > are normal. kindly look at attachment. > > actually i fetch data from switches and i have tried option -v 2c but the > result is same, 32 bit counter. can u explain it to me wat derive does and i > dont have to worry about other thigns like calculating data etc my self, if > you dont mind. > > can u also look at my graph generating cmd to verify if im not doing any > thing wrong, > > rrdtool graph test.png --imgformat=PNG --start=-2day --end=-1day -S=300 > "DEF:up=$UP:min:AVERAGE" "DEF:down=$DOWN:min:AVERAGE" > AREA:down#2ECCFA:"Out traffic" AREA:up#013ADF:"Download" > --vertical-label=bytes/sec --title="ADSL bandwidth graphs" > GPRINT:up:LAST:"Current\:%8.2lf %s\n" GPRINT:up:AVERAGE:"Average\:%8.2lf > %s\n" GPRINT:up:MAX:"Maximum\:%8.2lf %s\n" --font TITLE:12: --font AXIS:8: > --font LEGEND:10: --font UNIT:8: AREA:up#013ADF:"In traffic" > > > I am sorry if im teasing you, > Shabbir. > > > On Wed, May 15, 2013 at 7:36 PM, Martin Sperl <rrdt...@martin.sperl.org> > wrote: > so you are using the 32bit counter. > > Then if you insert into the database, you: > either have to do the "wraparound" logic yourself prior to inserting the > values > or you insert the "absolute" counter values and use /derive (as explained > before) > if you use the rrd flatfile database via rrdcreate and update, then > (depending on the definition of the rrd-file) rrd will try to do the > "overflow" detection... > > Martin > > P.s: the 64bit counter are typically only available if you use snmp V2C - > google for "64 bit counter SNMP" and you should find enough information on > how to use it. > > > On 15.05.2013, at 10:07, Shabbir Ahmed wrote: > >> quering the device snmpbulkget -c public 119.156.203.217 >> .1.3.6.1.2.1.2.2.1.10 -v 2c >> returns 32bit integers >> IF-MIB::ifInOctets.20971520 = Counter32: 0 >> IF-MIB::ifInOctets.20972032 = Counter32: 0 >> IF-MIB::ifInOctets.20972544 = Counter32: 1295822366 >> IF-MIB::ifInOctets.20973056 = Counter32: 1295822366 >> IF-MIB::ifInOctets.20973568 = Counter32: 1295822366 >> IF-MIB::ifInOctets.20974080 = Counter32: 1295822366 >> >> >> 2nd question is most of the values are always same is it the reason port is >> down? >> >> 3rd question what if counter reaches its up limit and starts from 0 again, >> how rrd tool manages it? or should we have to manage our self? >> >> kindly help further with this issue. >> >> thanks, >> >> >> On Wed, May 15, 2013 at 11:53 AM, Martin Sperl <rrdt...@martin.sperl.org> >> wrote: >> Seems as if you are having "integer overflow" issues reading the 32bit SNMP >> values (or when calculating the delta of the counters in your program). >> >> These rollovers is something your application will need to figure out prior >> to inserting into the database - either by detecting a "rollover" (the >> "rrdtool update" command for rrd files - not used with the dbi backend - has >> a provision for that) or by querying the 64bit values on the router instead >> and then inserting those values. Alternatively the dbi backend can also >> "try" to do the calculations for you on the fly if you insert the absolute >> counter values - see the man-page for details of which option to use... >> (/derive after the data column) >> >> Martin >> >> >> >> On 14.05.2013, at 20:03, Shabbir Ahmed wrote: >> >>> yes i used, this time i made graphs for my dsl router at home and they are >>> doing better, but the connection is 4mb and the graph shows 1.5G, i hv >>> checked database has large values, but these are ported from device, what i >>> do i need to do now devid the values on something to get the desired value? >>> >>> >>> >>> >>> On Tue, May 14, 2013 at 12:31 AM, Martin Sperl <rrdt...@martin.sperl.org> >>> wrote: >>> Did you try the /rrdfillmissing=1/ as mentioned below as a workaround for >>> your "missing" data? >>> >>> Martin >>> >>> >>> >>> On 13.05.2013, at 18:27, Shabbir Ahmed wrote: >>> >>>> some time when i query for snmp the get times out so i cant fill in the >>>> table at that time, to fix this wat should i do ? >>>> >>>> 12:00 i queried db response recorded into mysql >>>> 12:05 i queried but snmp get timeout, no entry into mysql >>>> 12:06 i queried and got the response into mysql. >>>> >>>> >>>> >>>> >>>> On Mon, May 13, 2013 at 11:36 AM, Martin Sperl <rrdt...@martin.sperl.org> >>>> wrote: >>>> Hi! >>>> >>>> One observation: actually you should see 4 lines not 2 or 1. >>>> >>>> The other is that your data is possibly not stored "equidistant", so that >>>> there are slight "gaps" of say 302 seconds between consecutive datapoints, >>>> which would mean that you are producing times like this: >>>> 0,302,603,...,3298,3601,... (so there would be a gap at time 3300 to 3599) >>>> >>>> For debugging purposes: can you please run rrdtool like this: >>>> RRDDEBUGSQL=1 rrdtool graph test.png --imgformat=PNG --start=-1day >>>> --width=600 --height=80 -S=300 "DEF:min=$UP:min:AVERAGE" >>>> "LINE1:min#336600:value" >>>> >>>> Then you will see the SQL that gets executed and then you can run the SQL >>>> on your own to understand how this "gaps" are generated from the >>>> database... >>>> >>>> But there is also an option to "fill in" "missing" gaps in rrd via the >>>> "/rrdfillmissing=" option. The idea here is similar to the "xff" argument >>>> to rrdcreate for the RRA definition. >>>> >>>> So you may try to add it to your DEF like this: >>>> UP="sql//mysql/host=127.0.0.1/dbname=newdsl/username=root/password=nocb4enter/rrdfillmissing=1//g3412306061/time/up/idx=201409600" >>>> >>>> Ciao, >>>> Martin >>>> >>>> On 12.05.2013, at 15:05, Shabbir Ahmed wrote: >>>> >>>>> Hi, i collect data from switches and save them into mysql, >>>>> (snmpidx,time,up,down) >>>>> >>>>> now i want to draw graphs using >>>>> >>>>> DOWN="sql//mysql/host=127.0.0.1/dbname=newdsl/username=root/password=nocb4enter//g3412306061/time/down/idx=201343232" >>>>> UP="sql//mysql/host=127.0.0.1/dbname=newdsl/username=root/password=nocb4enter//g3412306061/time/up/idx=201409600" >>>>> >>>>> rrdtool graph test.png --imgformat=PNG --start=-1day --width=600 >>>>> --height=80 -S=300 "DEF:min=$UP:min:AVERAGE" >>>>> "LINE1:min#336600:value" "DEF:avg=$UP:avg:AVERAGE" >>>>> "LINE1:avg#00FF11:average" "DEF:max=$UP:max:AVERAGE" >>>>> "LINE1:max#FF0000:max" "DEF:dw=$DOWN:min:AVERAGE" "LINE1:dw#0033CC:value" >>>>> >>>>> 1. the graphs drawn has gaps (i collect data every five mins) and draw >>>>> them with 5 mins step but still the gape bw two occurences are empty. >>>>> >>>>> 2. it doesnt draw two lines. >>>>> >>>>> Kindly help, >>>>> >>>>> _______________________________________________ >>>>> rrd-users mailing list >>>>> rrd-users@lists.oetiker.ch >>>>> https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users >>>> >>>> >>> >>> >>> <test.png> >> >> > > > <test.png>
_______________________________________________ rrd-users mailing list rrd-users@lists.oetiker.ch https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users