3 # exercise dbpmda with dynamic metrics
5 # Copyright (c) 2009 Ken McDonell. All Rights Reserved.
9 echo "QA output created by $seq"
11 # get standard environment, filters and checks
16 if echo help | dbpmda |
grep -q children
20 echo "No dynamic metric support in dbpmda" >$seq.notrun
21 echo "$seq: [not run] `cat $seq.notrun`"
25 status
=0 # success is the default!
27 $sudo rm -rf $tmp.
* $seq.full
28 trap "_cleanup; exit \$status" 0 1 2 3 15
35 $culldir && $sudo rm -fr "$PCP_TMP_DIR/mmv"
38 # is a pre-existing mmv directory in place? if so, write access needed
39 if [ -d "$PCP_TMP_DIR/mmv" ]
41 [ -w "$PCP_TMP_DIR/mmv" ] || _notrun
"Cannot write to $PCP_TMP_DIR/mmv"
42 $sudo rm -rf $PCP_TMP_DIR/mmv
/*
45 $sudo mkdir
-p "$PCP_TMP_DIR/mmv"
46 $sudo chown
`whoami` "$PCP_TMP_DIR/mmv" # local user - tmpdir writing
47 $sudo chgrp
$PCP_GROUP "$PCP_TMP_DIR/mmv" # group pcp - pmdammv reading
54 -e "s;$PCP_PMDAS_DIR;\$PCP_PMDAS_DIR;" \
55 -e "s;$PCP_TMP_DIR;\$PCP_TMP_DIR;" \
56 -e 's/[A-Z][a-z][a-z] [A-Z][a-z][a-z] *[0-9][0-9]* [0-9][0-9]:[0-9][0-9]:[0-9][0-9]/DATE/' \
57 -e 's/dbpmda([0-9][0-9]*)/dbpmda(PID)/' \
58 -e "s/ -U $username//g" \
59 -e "s/\.$DSO_SUFFIX/.DSO_SUFFIX/g" \
64 id pcp
>/dev
/null
2>&1 && pipeargs
="-U $username"
66 # real QA test starts here
67 echo "=== DSO PMDA test ==="
68 cat <<End-of-File | dbpmda -ei 2>&1 | _filter
69 open dso $PCP_PMDAS_DIR/sample/pmda_sample.$DSO_SUFFIX sample_init 30
73 pmid sampledso.secret.foo.two
74 pmid sampledso.secret.foo.bar.grunt.snort.six
75 pmid sampledso.secret.foo.bar.max.redirect
76 children sampledso.secret.foo
77 traverse sampledso.secret.foo
78 children sampledso.secret.foo.bar
79 traverse sampledso.secret.foo.bar
83 echo "=== Daemon PMDA test ==="
84 cat <<End-of-File | dbpmda -ei 2>&1 | _filter
85 open pipe $PCP_PMDAS_DIR/sample/pmdasample $pipeargs 29
89 pmid sample.secret.foo.two
90 pmid sample.secret.foo.bar.grunt.snort.six
91 pmid sample.secret.foo.bar.max.redirect
92 children sample.secret.foo
93 traverse sample.secret.foo
94 children sample.secret.foo.bar
95 traverse sample.secret.foo.bar
99 echo "=== MMV PMDA test ==="
101 echo "installed mmv files ..."
102 find $PCP_TMP_DIR/mmv
-type f |
sed -e "s;$PCP_TMP_DIR;PCP_TMP_DIR;"
103 cat <<End-of-File >$tmp.pmns
108 cat <<End-of-File | dbpmda -ei -n $tmp.pmns 2>&1 | _filter
109 desc mmv.test.strings
110 fetch mmv.test.strings mmv.test.counter
111 text mmv.test.strings
112 store mmv.control.reload "1"
113 open pipe $PCP_PMDAS_DIR/mmv/pmdammv $pipeargs
114 desc mmv.test.strings
115 fetch mmv.test.strings mmv.test.counter
116 text mmv.test.strings
117 store mmv.control.reload "1"
118 desc mmv.no.such.metric
120 open dso $PCP_PMDAS_DIR/mmv/pmda_mmv.$DSO_SUFFIX mmv_init 70
121 desc mmv.test.strings
122 fetch mmv.test.strings mmv.test.counter
123 text mmv.test.strings
124 store mmv.control.reload "1"