qa: update 660 to generate index.html, fixing pcp-testsuite runs
[pcp.git] / qa / 458
blob011806207e837f9063a05ee9e8af71dec30dbcad
1 #! /bin/sh
2 # PCP QA Test No. 458
3 # checks pmdalogger event functionality
5 # Copyright (c) 2011 Aconex. All Rights Reserved.
7 seq=`basename $0`
8 echo "QA output created by $seq"
10 # get standard environment, filters and checks
11 . ./common.product
12 . ./common.filter
13 . ./common.check
15 [ -d $PCP_PMDAS_DIR/logger ] || _notrun "No pmdalogger installed"
17 _cleanup()
19 [ -f $PCP_VAR_DIR/config/logger/logger.conf.$seq ] && \
20 _restore_config $PCP_VAR_DIR/config/logger/logger.conf
21 _restore_pmda_install logger
22 if $_needclean
23 then
24 if $install_on_cleanup
25 then
26 ( cd $PCP_PMDAS_DIR/logger; $sudo ./Install </dev/null >/dev/null 2>&1 )
27 else
28 ( cd $PCP_PMDAS_DIR/logger; $sudo ./Remove </dev/null >/dev/null 2>&1 )
30 _needclean=false
32 $sudo rm -f $tmp.*
33 exit $status
36 _testdata()
38 # generate data in a single write, for pmda determinism
39 echo \
40 "TeSt DaTa ... TeSt DaTa ...
41 TeSt2 DaTa2 ... TeSt2 DaTa2"
44 _filter()
46 sed \
47 -e "s,$tmp,TMPFILE,g" \
48 -e "s,$PCP_VAR_DIR,PCP_VAR_DIR,g" \
49 -e "s/host: $host/host: localhost/g" \
50 -e 's/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]\.[0-9][0-9][0-9]/TIMESTAMP/g'
53 install_on_cleanup=false
54 pminfo logger >/dev/null 2>&1 && install_on_cleanup=true
56 status=1 # failure is the default!
57 host=`hostname`
58 _needclean=true
59 trap "_cleanup" 0 1 2 3 15
61 # real QA test starts here
62 _prepare_pmda_install logger
64 # prepare test case files (see below)
65 $sudo rm -f $tmp.*
66 touch $tmp.reg
67 mkfifo $tmp.fifo
69 echo "
70 reg n $tmp.reg
71 fifo n $tmp.fifo
72 " > $tmp.conf
73 [ -d $PCP_VAR_DIR/config/logger ] || $sudo mkdir -p $PCP_VAR_DIR/config/logger
74 [ -f $PCP_VAR_DIR/config/logger/logger.conf ] && \
75 _save_config $PCP_VAR_DIR/config/logger/logger.conf
76 $sudo cp $tmp.conf $PCP_VAR_DIR/config/logger/logger.conf
78 # install PMDA accepting the defaults (esp config file)
79 $sudo ./Remove < /dev/null >/dev/null 2>&1
80 $sudo ./Install < /dev/null >$tmp.out 2>&1
81 cat $tmp.out | _filter_pmda_install | _filter
83 echo "=== 1. regular file case ==="
84 echo "Starting initial event watcher:"
85 pmevent -s 5 -t 1 logger.perfile.reg.records > $tmp.event &
86 sleep 2
87 _testdata >> $tmp.reg
88 wait
89 echo "done."
90 echo "Captured event trace was:"
91 cat $tmp.event | _filter
93 echo "=== 2. fifo queue case ==="
94 echo "Starting initial event watcher:"
95 pmevent -s 5 -t 1 logger.perfile.fifo.records > $tmp.event &
96 sleep 2
97 _testdata >> $tmp.fifo
98 wait
99 echo "done."
100 echo "Captured event trace was:"
101 cat $tmp.event | _filter
103 status=0
104 exit