# currently, we do not properly copy cdp and pdp information, so for
# comparison of RRD dumps, we just filter out those parts we do not
# expect to match anyway...
-function xmlfilter {
+function cpd_prep_filter {
#- <last_ds>1010</last_ds>
#- <value>4.0400000000e+04</value>
#+ <last_ds>U</last_ds>
#+ <value>0.0000000000e+00</value>
#+ <unknown_sec> 40 </unknown_sec>
-
-
perl -n -e '$a=join("",<>); $a=~s,<(cdp_prep).*?</\1>,,msg ; print $a'
}
$RRDTOOL create ${PREFIX}a2.rrd --start $ST --step 60 --source ${PREFIX}a1.rrd DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
report create-with-source-1
-$RRDTOOL dump ${PREFIX}a1.rrd | xmlfilter > ${PREFIX}a1.xml
-$RRDTOOL dump ${PREFIX}a2.rrd | xmlfilter > ${PREFIX}a2.xml
+$RRDTOOL dump ${PREFIX}a1.rrd > ${PREFIX}a1.xml
+$RRDTOOL dump ${PREFIX}a2.rrd > ${PREFIX}a2.xml
$DIFF ${PREFIX}a1.xml ${PREFIX}a2.xml
report data-match
$RRDTOOL create ${PREFIX}a3.rrd --start $ST --step 60 --source ${PREFIX}a2.rrd DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
-$RRDTOOL dump ${PREFIX}a3.rrd | xmlfilter > ${PREFIX}a3.xml
+$RRDTOOL dump ${PREFIX}a3.rrd > ${PREFIX}a3.xml
$DIFF ${PREFIX}a1.xml ${PREFIX}a3.xml
report data-match-again
$RRDTOOL create ${PREFIX}a6.rrd --start $ST --step 60 --source ${PREFIX}a5.rrd DS:b:GAUGE:120:0:U DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
# now a4 and a6 must match....
-$RRDTOOL dump ${PREFIX}a4.rrd | xmlfilter > ${PREFIX}a4.xml
-$RRDTOOL dump ${PREFIX}a6.rrd | xmlfilter > ${PREFIX}a6.xml
+$RRDTOOL dump ${PREFIX}a4.rrd > ${PREFIX}a4.xml
+$RRDTOOL dump ${PREFIX}a6.rrd > ${PREFIX}a6.xml
$DIFF ${PREFIX}a4.xml ${PREFIX}a6.xml
report data-match-after-swap
# currently, we do not properly copy cdp and pdp information, so for
# comparison of RRD dumps, we just filter out those parts we do not
# expect to match anyway...
-function xmlfilter {
+function cdp_prep_filter {
perl -n -e '$a=join("",<>); $a=~s,<(cdp_prep).*?</\1>,,msg ; print $a'
}
$RRDTOOL create ${PREFIX}ab2.rrd --start $ST --step 60 --source ${PREFIX}a1.rrd --source ${PREFIX}b1.rrd DS:a:GAUGE:120:0:U DS:b:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
report create-ab-with-two-sources
-$RRDTOOL dump ${PREFIX}ab1.rrd | xmlfilter > ${PREFIX}ab1.xml
-$RRDTOOL dump ${PREFIX}ab2.rrd | xmlfilter > ${PREFIX}ab2.xml
+$RRDTOOL dump ${PREFIX}ab1.rrd > ${PREFIX}ab1.xml
+$RRDTOOL dump ${PREFIX}ab2.rrd > ${PREFIX}ab2.xml
$DIFF ${PREFIX}ab1.xml ${PREFIX}ab2.xml
report data-match-ab
$RRDTOOL create ${PREFIX}ba2.rrd --start $ST --step 60 --source ${PREFIX}a1.rrd --source ${PREFIX}b1.rrd DS:b:GAUGE:120:0:U DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
report create-ba-with-two-sources
-$RRDTOOL dump ${PREFIX}ba1.rrd | xmlfilter > ${PREFIX}ba1.xml
-$RRDTOOL dump ${PREFIX}ba2.rrd | xmlfilter > ${PREFIX}ba2.xml
+$RRDTOOL dump ${PREFIX}ba1.rrd > ${PREFIX}ba1.xml
+$RRDTOOL dump ${PREFIX}ba2.rrd > ${PREFIX}ba2.xml
$DIFF ${PREFIX}ba1.xml ${PREFIX}ba2.xml
report data-match-ba
$RRDTOOL create ${PREFIX}bca2.rrd --start $ST --step 60 --source ${PREFIX}a1.rrd --source ${PREFIX}b1.rrd DS:b:GAUGE:120:0:U DS:c:GAUGE:120:0:U DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
report create-bac-with-two-sources
-$RRDTOOL dump ${PREFIX}bca1.rrd | xmlfilter > ${PREFIX}bca1.xml
-$RRDTOOL dump ${PREFIX}bca2.rrd | xmlfilter > ${PREFIX}bca2.xml
+$RRDTOOL dump ${PREFIX}bca1.rrd > ${PREFIX}bca1.xml
+$RRDTOOL dump ${PREFIX}bca2.rrd > ${PREFIX}bca2.xml
$DIFF ${PREFIX}bca1.xml ${PREFIX}bca2.xml
report data-match-bca
$RRDTOOL create ${PREFIX}bca3.rrd --step 60 --source ${PREFIX}a1.rrd --source ${PREFIX}b1.rrd DS:b:GAUGE:120:0:U DS:c:GAUGE:120:0:U DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
report create-bac-with-two-sources-no-start
-$RRDTOOL dump ${PREFIX}bca3.rrd | xmlfilter > ${PREFIX}bca3.xml
+$RRDTOOL dump ${PREFIX}bca3.rrd > ${PREFIX}bca3.xml
$DIFF ${PREFIX}bca1.xml ${PREFIX}bca3.xml
report data-match-bca-no-start
# currently, we do not properly copy cdp and pdp information, so for
# comparison of RRD dumps, we just filter out those parts we do not
# expect to match anyway...
-function xmlfilter {
+function cdp_prep_filter {
perl -n -e '$a=join("",<>); $a=~s,<(cdp_prep).*?</\1>,,msg ; print $a'
}
perl -n -e '$a=join("",<>); $a=~s,<(last_ds|value|unknown_sec).*?</\1>,,msg ; print $a'
}
+function data_filter_by_time {
+ START="$1"
+ END="$2"
+# <!-- 2011-03-13 08:46:00 CET / 1300002360 --> <row><v>7.9666666667e+02</v>
+
+ perl -n -e 'print unless (m,/ (\d+) -->.*<row>, && $1 >= '$START' && $1 <= '$END')'
+}
+
+FIRST=1300000000
+ST=$FIRST
-ST=1300000000
rm -f ${PREFIX}*.rrd ${PREFIX}*.xml
$RRDTOOL create ${PREFIX}a2_x.rrd --start $ST_X --step 60 --source ${PREFIX}ab2_xy.rrd DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
report recreate-original-a1_x-from-combined-source
-$RRDTOOL dump ${PREFIX}a1_x.rrd | xmlfilter | pdp_prep_filter > ${PREFIX}a1_x.xml
-$RRDTOOL dump ${PREFIX}a2_x.rrd | xmlfilter | pdp_prep_filter > ${PREFIX}a2_x.xml
+$RRDTOOL dump ${PREFIX}a1_x.rrd | pdp_prep_filter > ${PREFIX}a1_x.xml
+$RRDTOOL dump ${PREFIX}a2_x.rrd | pdp_prep_filter > ${PREFIX}a2_x.xml
$DIFF ${PREFIX}a1_x.xml ${PREFIX}a2_x.xml
report data-match-a1_x
$RRDTOOL create ${PREFIX}b2_x.rrd --start $ST_X --step 60 --source ${PREFIX}ab2_xy.rrd DS:b:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
report recreate-original-b1_x-from-combined-source
-$RRDTOOL dump ${PREFIX}b1_x.rrd | xmlfilter | pdp_prep_filter > ${PREFIX}b1_x.xml
-$RRDTOOL dump ${PREFIX}b2_x.rrd | xmlfilter | pdp_prep_filter > ${PREFIX}b2_x.xml
+$RRDTOOL dump ${PREFIX}b1_x.rrd | pdp_prep_filter > ${PREFIX}b1_x.xml
+$RRDTOOL dump ${PREFIX}b2_x.rrd | pdp_prep_filter > ${PREFIX}b2_x.xml
$DIFF ${PREFIX}b1_x.xml ${PREFIX}b2_x.xml
report data-match-b1_x
+$RRDTOOL create ${PREFIX}a2_y.rrd --start $ST_Y --step 60 --source ${PREFIX}ab2_xy.rrd DS:a:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
+report recreate-original-a1_y-from-combined-source
+
+$RRDTOOL dump ${PREFIX}a1_y.rrd | data_filter_by_time $FIRST $ST_X > ${PREFIX}a1_y.xml
+$RRDTOOL dump ${PREFIX}a2_y.rrd | data_filter_by_time $FIRST $ST_X > ${PREFIX}a2_y.xml
+
+$DIFF ${PREFIX}a1_y.xml ${PREFIX}a2_y.xml
+report data-match-a2_y
+
+$RRDTOOL create ${PREFIX}b2_y.rrd --start $ST_Y --step 60 --source ${PREFIX}ab2_xy.rrd DS:b:GAUGE:120:0:U RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
+report recreate-original-b1_y-from-combined-source
+
+$RRDTOOL dump ${PREFIX}b1_y.rrd | data_filter_by_time $FIRST $ST_X > ${PREFIX}b1_y.xml
+$RRDTOOL dump ${PREFIX}b2_y.rrd | data_filter_by_time $FIRST $ST_X > ${PREFIX}b2_y.xml
+
+$DIFF ${PREFIX}b1_y.xml ${PREFIX}b2_y.xml
+report data-match-b2_y
+
rm -f ${PREFIX}*.rrd ${PREFIX}*.xml