Fw: RRDTOOL fetch vs xport (shows rows with different step value)

"swami" <[email protected]>
Newsgroups gmane.comp.db.rrdtool.user,gmane.comp.db.rrdtool.devel
Message-ID <D126816F76254660B565FBACE524B7A6@SWAMIPC>
Guys,
         Any update on this issue is appreciated as i have to understand how rrd fetch vs xport works and why the result is different.

Regards
swami

----- Original Message ----- 
From: swami 
To: [email protected] ; [email protected] 
Sent: Friday, July 22, 2011 2:25 PM
Subject: RRDTOOL fetch vs xport (shows rows with different step value)


Hi All,
         Have created a RRD and am finding that rrdtool xport and fetch gives me the rows at different step value as shown below.
Can someone explain why it should be different ?

RRDTOOL version:1.4.5

Output of rrdtool info yr.rrd: (note , its created with step as 3 secs , to have pdp's of 3secs apart for 3 months  and  pdp daily apart for 1 yr)
filename = "yr.rrd"
rrd_version = "0003"
step = 3
last_update = 1311358529
header_size = 6524
ds[AccelTrafficBytesIn].index = 0
ds[AccelTrafficBytesIn].type = "GAUGE"
ds[AccelTrafficBytesIn].minimal_heartbeat = 10
ds[AccelTrafficBytesIn].min = 0.0000000000e+00
ds[AccelTrafficBytesIn].max = NaN
ds[AccelTrafficBytesIn].last_ds = "U"
ds[AccelTrafficBytesIn].value = 0.0000000000e+00
ds[AccelTrafficBytesIn].unknown_sec = 2
ds[PThruTrafficBytesIn].index = 1
ds[PThruTrafficBytesIn].type = "GAUGE"
ds[PThruTrafficBytesIn].minimal_heartbeat = 10
ds[PThruTrafficBytesIn].min = 0.0000000000e+00
ds[PThruTrafficBytesIn].max = NaN
ds[PThruTrafficBytesIn].last_ds = "U"
ds[PThruTrafficBytesIn].value = 0.0000000000e+00
ds[PThruTrafficBytesIn].unknown_sec = 2
ds[GoodPutBytesOut].index = 2
ds[GoodPutBytesOut].type = "GAUGE"
ds[GoodPutBytesOut].minimal_heartbeat = 10
ds[GoodPutBytesOut].min = 0.0000000000e+00
ds[GoodPutBytesOut].max = NaN
ds[GoodPutBytesOut].last_ds = "U"
ds[GoodPutBytesOut].value = 0.0000000000e+00
ds[GoodPutBytesOut].unknown_sec = 2
ds[GoodPutBytesIn].index = 3
ds[GoodPutBytesIn].type = "GAUGE"
ds[GoodPutBytesIn].minimal_heartbeat = 10
ds[GoodPutBytesIn].min = 0.0000000000e+00
ds[GoodPutBytesIn].max = NaN
ds[GoodPutBytesIn].last_ds = "U"
ds[GoodPutBytesIn].value = 0.0000000000e+00
ds[GoodPutBytesIn].unknown_sec = 2
ds[WanPThruBytesIn].index = 4
ds[WanPThruBytesIn].type = "GAUGE"
ds[WanPThruBytesIn].minimal_heartbeat = 10
ds[WanPThruBytesIn].min = 0.0000000000e+00
ds[WanPThruBytesIn].max = NaN
ds[WanPThruBytesIn].last_ds = "U"
ds[WanPThruBytesIn].value = 0.0000000000e+00
ds[WanPThruBytesIn].unknown_sec = 2
ds[BytesOut].index = 5
ds[BytesOut].type = "GAUGE"
ds[BytesOut].minimal_heartbeat = 10
ds[BytesOut].min = 0.0000000000e+00
ds[BytesOut].max = NaN
ds[BytesOut].last_ds = "U"
ds[BytesOut].value = 0.0000000000e+00
ds[BytesOut].unknown_sec = 2
ds[LanBytesIn].index = 6
ds[LanBytesIn].type = "GAUGE"
ds[LanBytesIn].minimal_heartbeat = 10
ds[LanBytesIn].min = 0.0000000000e+00
ds[LanBytesIn].max = NaN
ds[LanBytesIn].last_ds = "U"
ds[LanBytesIn].value = 0.0000000000e+00
ds[LanBytesIn].unknown_sec = 2
ds[Reduction].index = 7
ds[Reduction].type = "GAUGE"
ds[Reduction].minimal_heartbeat = 10
ds[Reduction].min = 0.0000000000e+00
ds[Reduction].max = NaN
ds[Reduction].last_ds = "U"
ds[Reduction].value = 0.0000000000e+00
ds[Reduction].unknown_sec = 2
rra[0].cf = "AVERAGE"
rra[0].rows = 1712000
rra[0].cur_row = 985084
rra[0].pdp_per_row = 1
rra[0].xff = 5.0000000000e-01
rra[0].cdp_prep[0].value = NaN
rra[0].cdp_prep[0].unknown_datapoints = 0
rra[0].cdp_prep[1].value = NaN
rra[0].cdp_prep[1].unknown_datapoints = 0
rra[0].cdp_prep[2].value = NaN
rra[0].cdp_prep[2].unknown_datapoints = 0
rra[0].cdp_prep[3].value = NaN
rra[0].cdp_prep[3].unknown_datapoints = 0
rra[0].cdp_prep[4].value = NaN
rra[0].cdp_prep[4].unknown_datapoints = 0
rra[0].cdp_prep[5].value = NaN
rra[0].cdp_prep[5].unknown_datapoints = 0
rra[0].cdp_prep[6].value = NaN
rra[0].cdp_prep[6].unknown_datapoints = 0
rra[0].cdp_prep[7].value = NaN
rra[0].cdp_prep[7].unknown_datapoints = 0
rra[1].cf = "AVERAGE"
rra[1].rows = 365
rra[1].cur_row = 187
rra[1].pdp_per_row = 28800
rra[1].xff = 5.0000000000e-01
rra[1].cdp_prep[0].value = NaN
rra[1].cdp_prep[0].unknown_datapoints = 21909
rra[1].cdp_prep[1].value = NaN
rra[1].cdp_prep[1].unknown_datapoints = 21909
rra[1].cdp_prep[2].value = NaN
rra[1].cdp_prep[2].unknown_datapoints = 21909
rra[1].cdp_prep[3].value = NaN
rra[1].cdp_prep[3].unknown_datapoints = 21909
rra[1].cdp_prep[4].value = NaN
rra[1].cdp_prep[4].unknown_datapoints = 21909
rra[1].cdp_prep[5].value = NaN
rra[1].cdp_prep[5].unknown_datapoints = 21909
rra[1].cdp_prep[6].value = NaN
rra[1].cdp_prep[6].unknown_datapoints = 21909
rra[1].cdp_prep[7].value = NaN
rra[1].cdp_prep[7].unknown_datapoints = 21909
rra[2].cf = "MAX"
rra[2].rows = 1712000
rra[2].cur_row = 1120126
rra[2].pdp_per_row = 1
rra[2].xff = 5.0000000000e-01
rra[2].cdp_prep[0].value = NaN
rra[2].cdp_prep[0].unknown_datapoints = 0
rra[2].cdp_prep[1].value = NaN
rra[2].cdp_prep[1].unknown_datapoints = 0
rra[2].cdp_prep[2].value = NaN
rra[2].cdp_prep[2].unknown_datapoints = 0
rra[2].cdp_prep[3].value = NaN
rra[2].cdp_prep[3].unknown_datapoints = 0
rra[2].cdp_prep[4].value = NaN
rra[2].cdp_prep[4].unknown_datapoints = 0
rra[2].cdp_prep[5].value = NaN
rra[2].cdp_prep[5].unknown_datapoints = 0
rra[2].cdp_prep[6].value = NaN
rra[2].cdp_prep[6].unknown_datapoints = 0
rra[2].cdp_prep[7].value = NaN
rra[2].cdp_prep[7].unknown_datapoints = 0
rra[3].cf = "MAX"
rra[3].rows = 365
rra[3].cur_row = 105
rra[3].pdp_per_row = 28800
rra[3].xff = 5.0000000000e-01
rra[3].cdp_prep[0].value = NaN
rra[3].cdp_prep[0].unknown_datapoints = 21909
rra[3].cdp_prep[1].value = NaN
rra[3].cdp_prep[1].unknown_datapoints = 21909
rra[3].cdp_prep[2].value = NaN
rra[3].cdp_prep[2].unknown_datapoints = 21909
rra[3].cdp_prep[3].value = NaN
rra[3].cdp_prep[3].unknown_datapoints = 21909
rra[3].cdp_prep[4].value = NaN
rra[3].cdp_prep[4].unknown_datapoints = 21909
rra[3].cdp_prep[5].value = NaN
rra[3].cdp_prep[5].unknown_datapoints = 21909
rra[3].cdp_prep[6].value = NaN
rra[3].cdp_prep[6].unknown_datapoints = 21909
rra[3].cdp_prep[7].value = NaN
rra[3].cdp_prep[7].unknown_datapoints = 21909
rra[4].cf = "LAST"
rra[4].rows = 1712000
rra[4].cur_row = 568409
rra[4].pdp_per_row = 1
rra[4].xff = 5.0000000000e-01
rra[4].cdp_prep[0].value = NaN
rra[4].cdp_prep[0].unknown_datapoints = 0
rra[4].cdp_prep[1].value = NaN
rra[4].cdp_prep[1].unknown_datapoints = 0
rra[4].cdp_prep[2].value = NaN
rra[4].cdp_prep[2].unknown_datapoints = 0
rra[4].cdp_prep[3].value = NaN
rra[4].cdp_prep[3].unknown_datapoints = 0
rra[4].cdp_prep[4].value = NaN
rra[4].cdp_prep[4].unknown_datapoints = 0
rra[4].cdp_prep[5].value = NaN
rra[4].cdp_prep[5].unknown_datapoints = 0
rra[4].cdp_prep[6].value = NaN
rra[4].cdp_prep[6].unknown_datapoints = 0
rra[4].cdp_prep[7].value = NaN
rra[4].cdp_prep[7].unknown_datapoints = 0
rra[5].cf = "LAST"
rra[5].rows = 365
rra[5].cur_row = 60
rra[5].pdp_per_row = 28800
rra[5].xff = 5.0000000000e-01
rra[5].cdp_prep[0].value = NaN
rra[5].cdp_prep[0].unknown_datapoints = 21909
rra[5].cdp_prep[1].value = NaN
rra[5].cdp_prep[1].unknown_datapoints = 21909
rra[5].cdp_prep[2].value = NaN
rra[5].cdp_prep[2].unknown_datapoints = 21909
rra[5].cdp_prep[3].value = NaN
rra[5].cdp_prep[3].unknown_datapoints = 21909
rra[5].cdp_prep[4].value = NaN
rra[5].cdp_prep[4].unknown_datapoints = 21909
rra[5].cdp_prep[5].value = NaN
rra[5].cdp_prep[5].unknown_datapoints = 21909
rra[5].cdp_prep[6].value = NaN
rra[5].cdp_prep[6].unknown_datapoints = 21909
rra[5].cdp_prep[7].value = NaN
rra[5].cdp_prep[7].unknown_datapoints = 21909


Snaphost of output of rrdtool xport for now-1600s shows rows at 6 secs apart :
#rrdtool xport -s now-1600s -e now --step 3 DEF:AccelTrafficBytesIn=yr.rrd:AccelTrafficBytesIn:AVERAGE XPORT:AccelTrafficBytesIn

<xport>
  <meta>
    <start>1311367668</start>
    <step>6</step>
    <end>1311369270</end>
    <rows>268</rows>
    <columns>1</columns>
    <legend>
      <entry></entry>
    </legend>
  </meta>
  <data>
    <row><t>1311367668</t><v>NaN</v></row>
    <row><t>1311367674</t><v>NaN</v></row>
    <row><t>1311367680</t><v>NaN</v></row>

Snapshot of the output from rrdtool fetch for now-1600s shows rows at 3 secs apart:
#rrdtool fetch yr.rrd AVERAGE -s now-1600s -e now
           AccelTrafficBytesIn PThruTrafficBytesIn     GoodPutBytesOut      Goo
dPutBytesIn     WanPThruBytesIn            BytesOut          LanBytesIn
  Reduction

1311368013: nan nan nan nan nan nan nan nan
1311368016: nan nan nan nan nan nan nan nan
1311368019: nan nan nan nan nan nan nan nan
1311368022: nan nan nan nan nan nan nan nan


Regards
swami

_______________________________________________
rrd-users mailing list
[email protected]
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.