diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2014-10-26 12:33:50 +0400 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2014-10-26 12:33:50 +0400 |
commit | 47e6e7c84f008a53061e661f31ae96629bc694ef (patch) | |
tree | 648a07f3b5b9d67ce19b0fd72e8caa1175c98f1a /qa/511 | |
download | pcp-47e6e7c84f008a53061e661f31ae96629bc694ef.tar.gz |
Debian 3.9.10debian/3.9.10debian
Diffstat (limited to 'qa/511')
-rwxr-xr-x | qa/511 | 88 |
1 files changed, 88 insertions, 0 deletions
@@ -0,0 +1,88 @@ +#!/bin/sh +# PCP QA Test No. 511 +# +# Exercise sar2pcp for RH BZ 859117 +# This may prove too optimistic (asking sadf to replay different sar +# files, that sar generated ... backwards compatibility much?) - if +# thats the case, we'll have to special case things. +# +# Copyright (c) 2012 Red Hat. +# + +seq=`basename $0` +echo "QA output created by $seq" + +# get standard environment, filters and checks +. ./common.product +. ./common.filter +. ./common.check + +which sadf >/dev/null 2>&1 || _notrun "sadf not installed (sysstat package)" +[ $PCP_VER -ge 3610 ] || _notrun "Installed sar2pcp is too old" + +status=1 # failure is the default! +$sudo rm -rf $tmp.* $seq.full +trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15 + +logcheck() +{ + safile="$1" + pcplog="$2" + + # should be no errors/warnings and pcp tools should also not fail + pmdumplog -z -l $pcplog >>$seq.full + [ $? -eq 0 ] && echo "pmdumplog approved of the $safile conversion" + + # this'll visit and examine in detail every single stored result, + # as well as all metadata associates with the generated archive. + pmlogsummary $pcplog >>$seq.full + [ $? -eq 0 ] && echo "pmlogsummary approved of the $safile conversion" +} + +# backwards compatibility route - silence is golden +silence() +{ + safile="$1" + echo "sar2pcp thinks $safile is going well so far" + echo "pmdumplog approved of the $safile conversion" + echo "pmlogsummary approved of the $safile conversion" +} + +# real QA test starts here +cd $here +rm -f $seq.full + +for sadist in \ + 859117-rhel5.bin 859117-rhel5.xml f16-sa20.bin \ + fche-csb6-rhel6.bin fche-csb6-rhel6.xml \ + rhel5-sa20.bin smash-rhel5.xml smash-rhel6.xml +do + safile="sadist/$sadist" + echo "==> Checking $safile" | tee -a $seq.full + pcplog=$tmp.pcplog + sar2pcp $safile $pcplog > $tmp.out 2>&1 + sts=$? + + # this seems to be a common sadf fail message; + # happens when the installed sysutils is old: + grep 'Invalid system activity file' $tmp.out >/dev/null + if [ $? -eq 0 ] + then + echo "$safile is not parsable by the installed sysutils" >>$seq.full + silence $safile + else + if [ $sts -eq 0 ] + then + echo "sar2pcp thinks $safile is going well so far" + logcheck $safile $pcplog + else + echo "sar2pcp failed ..." + cat $tmp.out + fi + fi + rm -f $tmp.pcplog.* +done + +# success, all done +status=0 +exit |