. $(dirname $0)/functions
BASE=$BASEDIR/$(basename $0)-test
-BUILD=$BUILDDIR/$(basename $0)-test
+PREFIX=$BUILDDIR/$(basename $0)-test
# 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
# test: remove the additional RRA from the second and compare dumps
# test: add the additional RRA to the first and compare dumps
+rm -f ${PREFIX}*.rrd ${PREFIX}*.xml
+
ST=1300000000
-$RRDTOOL create ${BUILD}a1.rrd --start $(($ST-1)) --step 60 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 create ${PREFIX}a1.rrd --start $(($ST-1)) --step 60 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 create1
UPDATE=
V=$(($V + 20))
ST=$A
done
-$RRDTOOL update ${BUILD}a1.rrd $UPDATE
+$RRDTOOL update ${PREFIX}a1.rrd $UPDATE
-$RRDTOOL create ${BUILD}a2.rrd --start $ST --step 60 --source ${BUILD}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
+$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 ${BUILD}a1.rrd | xmlfilter > ${BUILD}a1.xml
-$RRDTOOL dump ${BUILD}a2.rrd | xmlfilter > ${BUILD}a2.xml
-$DIFF ${BUILD}a1.xml ${BUILD}a2.xml
+$RRDTOOL dump ${PREFIX}a1.rrd | xmlfilter > ${PREFIX}a1.xml
+$RRDTOOL dump ${PREFIX}a2.rrd | xmlfilter > ${PREFIX}a2.xml
+$DIFF ${PREFIX}a1.xml ${PREFIX}a2.xml
report data-match
-$RRDTOOL create ${BUILD}a3.rrd --start $ST --step 60 --source ${BUILD}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 ${BUILD}a3.rrd | xmlfilter > ${BUILD}a3.xml
-$DIFF ${BUILD}a1.xml ${BUILD}a3.xml
+$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
+$DIFF ${PREFIX}a1.xml ${PREFIX}a3.xml
report data-match-again
-$RRDTOOL create ${BUILD}a4.rrd --start $ST --step 60 --source ${BUILD}a2.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
+$RRDTOOL create ${PREFIX}a4.rrd --start $ST --step 60 --source ${PREFIX}a2.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-with-source-effectively-adding-DS
UPDATE=
ST=$A
done
-$RRDTOOL update ${BUILD}a4.rrd --template a:b $UPDATE
+$RRDTOOL update ${PREFIX}a4.rrd --template a:b $UPDATE
report update-with-two-data-sources
# now swap the two data sources
-$RRDTOOL create ${BUILD}a5.rrd --start $ST --step 60 --source ${BUILD}a4.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
+$RRDTOOL create ${PREFIX}a5.rrd --start $ST --step 60 --source ${PREFIX}a4.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
# and swap the two data sources back, so we can then compare the outputs....
-$RRDTOOL create ${BUILD}a6.rrd --start $ST --step 60 --source ${BUILD}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
+$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 ${BUILD}a4.rrd | xmlfilter > ${BUILD}a4.xml
-$RRDTOOL dump ${BUILD}a6.rrd | xmlfilter > ${BUILD}a6.xml
-$DIFF ${BUILD}a4.xml ${BUILD}a6.xml
+$RRDTOOL dump ${PREFIX}a4.rrd | xmlfilter > ${PREFIX}a4.xml
+$RRDTOOL dump ${PREFIX}a6.rrd | xmlfilter > ${PREFIX}a6.xml
+$DIFF ${PREFIX}a4.xml ${PREFIX}a6.xml
report data-match-after-swap
+
+
+rm -f ${PREFIX}*.rrd ${PREFIX}*.xml
+
. $(dirname $0)/functions
BASE=$BASEDIR/$(basename $0)-test
-BUILD=$BUILDDIR/$(basename $0)-test
+PREFIX=$BUILDDIR/$(basename $0)-test
# 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
ST=1300000000
-rm -f ${BUILD}*.rrd ${BUILD}*.xml
-$RRDTOOL create ${BUILD}a1.rrd --start $(($ST-1)) --step 60 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
+rm -f ${PREFIX}*.rrd ${PREFIX}*.xml
+$RRDTOOL create ${PREFIX}a1.rrd --start $(($ST-1)) --step 60 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 createa1
-$RRDTOOL create ${BUILD}b1.rrd --start $(($ST-1)) --step 60 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
+$RRDTOOL create ${PREFIX}b1.rrd --start $(($ST-1)) --step 60 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 createb1
-$RRDTOOL create ${BUILD}ab1.rrd --start $(($ST-1)) --step 60 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
+$RRDTOOL create ${PREFIX}ab1.rrd --start $(($ST-1)) --step 60 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 createab1
+$RRDTOOL create ${PREFIX}ba1.rrd --start $(($ST-1)) --step 60 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 createba1
+
+$RRDTOOL create ${PREFIX}bca1.rrd --start $(($ST-1)) --step 60 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 createbca1
UPDATEA=
UPDATEB=
UPDATEAB=
V=10
-for A in $(seq $ST 60 $(($ST + 3000)) ) ; do
+for A in $(seq $ST 60 $(($ST + 9000)) ) ; do
UPDATEA="$UPDATEA $A:$V"
UPDATEB="$UPDATEB $A:$(($V * 2))"
UPDATEAB="$UPDATEAB $A:$V:$(($V * 2))"
V=$(($V + 20))
ST=$A
done
-$RRDTOOL update ${BUILD}a1.rrd $UPDATEA
-$RRDTOOL update ${BUILD}b1.rrd $UPDATEB
-$RRDTOOL update ${BUILD}ab1.rrd $UPDATEAB
-
-
-$RRDTOOL create ${BUILD}ab2.rrd --start $ST --step 60 --source ${BUILD}a1.rrd --source ${BUILD}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-with-two-sources
-
-
-
+$RRDTOOL update ${PREFIX}a1.rrd $UPDATEA
+$RRDTOOL update ${PREFIX}b1.rrd $UPDATEB
+$RRDTOOL update ${PREFIX}ab1.rrd $UPDATEAB
+$RRDTOOL update ${PREFIX}ba1.rrd --template a:b $UPDATEAB
+$RRDTOOL update ${PREFIX}bca1.rrd --template a:b $UPDATEAB
-$RRDTOOL dump ${BUILD}ab1.rrd | xmlfilter > ${BUILD}ab1.xml
-$RRDTOOL dump ${BUILD}ab2.rrd | xmlfilter > ${BUILD}ab2.xml
-$DIFF ${BUILD}ab1.xml ${BUILD}ab2.xml
-report data-match
-AB1=$($RRDTOOL graph ${BUILD}ab1.png --end "$ST" --start end-1h DEF:a=${BUILD}ab1.rrd:a:AVERAGE DEF:b=${BUILD}ab1.rrd:b:AVERAGE CDEF:c=b,a,/ VDEF:v=c,TOTAL PRINT:v:%lg)
-AB2=$($RRDTOOL graph ${BUILD}ab2.png --end "$ST" --start end-1h DEF:a=${BUILD}ab2.rrd:a:AVERAGE DEF:b=${BUILD}ab2.rrd:b:AVERAGE CDEF:c=b,a,/ VDEF:v=c,TOTAL PRINT:v:%lg)
+$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
-[ "$AB1" = "$AB2" ]
-report totalled-ratio
-exit 0
+$RRDTOOL dump ${PREFIX}ab1.rrd | xmlfilter > ${PREFIX}ab1.xml
+$RRDTOOL dump ${PREFIX}ab2.rrd | xmlfilter > ${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 ${BUILD}a1.rrd | xmlfilter > ${BUILD}a1.xml
-$RRDTOOL dump ${BUILD}a2.rrd | xmlfilter > ${BUILD}a2.xml
-$DIFF ${BUILD}a1.xml ${BUILD}a2.xml
-report data-match
-
-$RRDTOOL create ${BUILD}a3.rrd --start $ST --step 60 --source ${BUILD}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 ${BUILD}a3.rrd | xmlfilter > ${BUILD}a3.xml
-$DIFF ${BUILD}a1.xml ${BUILD}a3.xml
-report data-match-againg
-
-$RRDTOOL create ${BUILD}a4.rrd --start $ST --step 60 --source ${BUILD}a2.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-with-source-effectively-adding-DS
-
-UPDATE=
-ST=$(($ST + 60))
-for A in $(seq $ST 60 $(($ST + 3000)) ) ; do
- UPDATE="$UPDATE $A:$V:$((2 * $V))"
- V=$(($V + 20))
- ST=$A
-done
+$RRDTOOL dump ${PREFIX}ba1.rrd | xmlfilter > ${PREFIX}ba1.xml
+$RRDTOOL dump ${PREFIX}ba2.rrd | xmlfilter > ${PREFIX}ba2.xml
+$DIFF ${PREFIX}ba1.xml ${PREFIX}ba2.xml
+report data-match-ba
-$RRDTOOL update ${BUILD}a4.rrd --template a:b $UPDATE
-report update-with-two-data-sources
-# now swap the two data sources
-$RRDTOOL create ${BUILD}a5.rrd --start $ST --step 60 --source ${BUILD}a4.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
+$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
-# and swap the two data sources back, so we can then compare the outputs....
-$RRDTOOL create ${BUILD}a6.rrd --start $ST --step 60 --source ${BUILD}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}bca1.rrd | xmlfilter > ${PREFIX}bca1.xml
+$RRDTOOL dump ${PREFIX}bca2.rrd | xmlfilter > ${PREFIX}bca2.xml
+$DIFF ${PREFIX}bca1.xml ${PREFIX}bca2.xml
+report data-match-bca
-$RRDTOOL dump ${BUILD}a4.rrd | xmlfilter > ${BUILD}a4.xml
-$RRDTOOL dump ${BUILD}a6.rrd | xmlfilter > ${BUILD}a6.xml
-$DIFF ${BUILD}a4.xml ${BUILD}a6.xml
-report data-match-after-swap