3 # Testing pmdaelasticsearch versioned metrics
5 # Copyright (c) 2016 Red Hat. All Rights Reserved.
9 echo "QA output created by $seq"
11 # get standard environment, filters and checks
16 [ -f $PCP_PMDAS_DIR/elasticsearch
/pmdaelasticsearch.pl
] || \
17 _notrun
"elasticsearch pmda not installed"
20 $PCP_BINADM_DIR/telnet-probe
-c localhost
$port || \
21 _notrun
"Noones home on the default elasticsearch port $port"
24 status
=1 # failure is the default!
25 $sudo rm -rf $tmp $tmp.
* $seq.full
27 pmdaelasticsearch_remove
()
30 echo "=== remove elasticsearch agent ==="
31 $sudo .
/Remove
>$tmp.out
2>&1
32 _filter_pmda_remove
<$tmp.out
35 pmdaelasticsearch_install
()
37 # start from known starting points
38 cd $PCP_PMDAS_DIR/elasticsearch
39 $sudo .
/Remove
>/dev
/null
2>&1
40 $sudo $PCP_RC_DIR/pmcd stop
2>&1 | _filter_pcp_stop
43 echo "=== elasticsearch agent installation ==="
44 $sudo .
/Install
</dev
/null
>$tmp.out
2>&1
45 cat $tmp.out
>>$here/$seq.full
46 # Check elasticsearch metrics have appeared ... X metrics and Y values
47 _filter_pmda_install
<$tmp.out \
49 -e '/^Waiting for pmcd/s/\.\.\.[. ]*$/DOTS/' \
50 -e 's/[0-9][0-9]* warnings, //' \
52 /Check elasticsearch metrics have appeared/ { if ($7 >= 90 && $7 <= 250) $7 = "X"
53 if ($10 >= 0 && $10 <= 500) $10 = "Y"
58 _prepare_pmda elasticsearch
59 trap "_cleanup_pmda elasticsearch; exit \$status" 0 1 2 3 15
61 # real QA test starts here
62 pmdaelasticsearch_install
64 if pminfo
-v elasticsearch.nodes.jvm.pid
> $tmp.info
2> $tmp.err
66 echo "Checking a couple jvm metrics for error conditions (should be blank)"
67 pminfo
-v elasticsearch.nodes.jvm.pid
68 pminfo
-v elasticsearch.nodes.jvm.version
70 echo "... failed! ... here is the Install log ..."
74 pmdaelasticsearch_remove