pmrep: further zbxsend python3 fixes
[pcp.git] / qa / 528
blobdaec997fc37d98df563a467caf8f6b5c23c58ddf
1 #!/bin/sh
2 # PCP QA Test No. 528
3 # Exercising log import API batching extensions.
5 # Copyright (c) 2013 Red Hat.
8 seq=`basename $0`
9 echo "QA output created by $seq"
11 # get standard environment, filters and checks
12 . ./common.product
13 . ./common.filter
14 . ./common.check
16 test $PCP_VER -ge 30801 || _notrun "No support for log import batching"
17 [ -f ${PCP_LIB_DIR}/libpcp_import.${DSO_SUFFIX} ] || \
18 _notrun "No support for libpcp_import"
19 perl -e "use PCP::LogImport" 2>/dev/null || \
20 _notrun "Perl PCP::LogImport module is not installed"
22 status=1 # failure is the default!
23 $sudo rm -rf $tmp.* $seq.full
24 trap "cd $here; rm -rf $tmp.*; exit \$status" 0 1 2 3 15
26 _filter1()
28 sed \
29 -e '/pmResult/s/ .* numpmid/ ... numpmid/' \
30 -e '/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/s/[^ ]*/TIMESTAMP/' \
31 -e '/^EXPORT_FAIL$/d' \
32 -e '/::EXPORT_FAIL$/d'
35 _filter2()
37 _filter_pmdumplog \
38 | sed \
39 -e '/PID for pmlogger:/s/[0-9][0-9]*/PID/'
42 _filter3()
44 $PCP_AWK_PROG '
45 BEGIN { part = "part1" }
46 NF == 0 { part = "part2" }
47 { print >part }'
48 if [ -f part1 ]
49 then
50 # first part of output is in non-deterministic order, so sort it
52 _filter1 <part1 | LC_COLLATE=POSIX sort
54 [ -f part2 ] && _filter1 <part2
57 mkdir $tmp.dir
58 cd $tmp.dir
60 # real QA test starts here
61 rm -f myarchive.*
62 perl $here/src/batch_import.perl 2>&1 | tee -a $here/$seq.full | _filter3
63 pminfo -dm -a myarchive
64 pmdumplog -a myarchive 2>&1 | _filter2
66 # success, all done
67 status=0
68 exit