pmrep: update TODO, man page
[pcp.git] / qa / 1054
blobcd05a545cfa37b020ff3e8e079f22c16bc3b0be9
1 #!/bin/sh
2 # PCP QA Test No. 1054
3 # pmlogger/pmcpp implementation of pmlognow
5 # Copyright (c) 2015 Ken McDonell. All Rights Reserved.
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 status=1 # failure is the default!
17 $sudo rm -rf $tmp.* $seq.full
18 trap "cd $here; rm -rf $tmp.*; exit \$status" 0 1 2 3 15
20 cat >$tmp.config <<'End-of-File'
21 %shell '[ -n "$PMLOGGER_ONCE" ] && echo %define PMLOGGER_ONCE; exit 0'
23 %ifdef PMLOGGER_ONCE
24 %define disk_dev_freq once
25 %define cpu_all_freq once
26 # etc ..
27 %else
28 %define disk_dev_freq '10 sec'
29 %define cpu_all_freq '1 sec'
30 # etc ..
31 %endif
33 log mandatory on %{disk_dev_freq} {
34 disk.dev
37 log mandatory on %{cpu_all_freq} {
38 kernel.all.cpu
40 End-of-File
42 _filter()
44 $PCP_AWK_PROG '
45 $1 == "Group" { $2 = "[N"
46 print
47 skip = 1
48 next
50 skip == 1 && $1 == "}" {
51 print
52 skip = 0
53 next
55 skip == 1 { next }
56 { print }' \
57 | sed -e '/} logged /s/[0-9][0-9.]*/NNN/g'
60 # real QA test starts here
61 echo "once case ..." | tee -a $seq.full
62 PMLOGGER_ONCE=yes pmlogger -c $tmp.config -s 1 -r -l $tmp.log $tmp
63 pmdumplog $tmp >>$seq.full
64 cat $tmp.log >>$seq.full
65 _filter_pmlogger_log <$tmp.log \
66 | _filter
67 rm -f $tmp.0 $tmp.meta $tmp.index
69 echo | tee -a $seq.full
70 echo "other case ..." | tee -a $seq.full
71 pmlogger -c $tmp.config -s 4 -r -l $tmp.log $tmp
72 pmdumplog $tmp >>$seq.full
73 cat $tmp.log >>$seq.full
74 _filter_pmlogger_log <$tmp.log \
75 | _filter
77 # success, all done
78 status=0
80 exit