diff options
Diffstat (limited to 'qa/389')
-rwxr-xr-x | qa/389 | 62 |
1 files changed, 62 insertions, 0 deletions
@@ -0,0 +1,62 @@ +#! /bin/sh +# PCP QA Test No. 389 +# pmlogger does not exit with -L when it loses pmcd connection? +# #528442 +# +# Copyright (c) 1995-2002 Silicon Graphics, Inc. All Rights Reserved. +# + +seq=`basename $0` +echo "QA output created by $seq" + +# get standard filters +. ./common.product +. ./common.filter +. ./common.check + +host=`hostname` +status=1 # failure is the default! + +_filter() +{ + sed -e '/myFetch: End of File: PMCD exited/d' \ + -e '/pmlogger: Error: IPC protocol failure/d' +} + +trap "$sudo rm -f $tmp.*; exit \$status" 0 1 2 3 15 + +# real QA test starts here +echo "=== empty config and _no_ -L, should exit immediately ===" +$sudo rm -f $tmp.* +pmlogger -c /dev/null -l $tmp.log $tmp & +sleep 2 +echo "expect no pmlogger process ..." +ps $PCP_PS_ALL_FLAGS | $PCP_AWK_PROG '$2 == "'$!'" { print }' +_filter_pmlogger_log <$tmp.log | sed -e "s/$host/HOST/" + +echo +echo "=== empty config and -L, should exit when pmcd restarted ===" +$sudo rm -f $tmp.* +_start_up_pmlogger -L -c /dev/null -l $tmp.log $tmp +_wait_for_pmlogger $pid $tmp.log 5 +$sudo $PCP_RC_DIR/pcp restart | _filter_pcp_start +_wait_for_pmcd +echo "expect no pmlogger process ..." +ps $PCP_PS_ALL_FLAGS | $PCP_AWK_PROG '$2 == "'$!'" { print }' +_filter_pmlogger_log <$tmp.log | sed -e "s/$host/HOST/" + +echo +echo "=== non-empty config, should exit when pmcd restarted ===" +$sudo rm -f $tmp.* +echo "log mandatory on 1 sec pmcd.version" >$tmp.config +_start_up_pmlogger -c $tmp.config -l $tmp.log $tmp +_wait_for_pmlogger $pid $tmp.log 5 +$sudo $PCP_RC_DIR/pcp restart | _filter_pcp_start +_wait_for_pmcd +echo "expect no pmlogger process ..." +ps $PCP_PS_ALL_FLAGS | $PCP_AWK_PROG '$2 == "'$!'" { print }' +_filter_pmlogger_log <$tmp.log | _filter | sed -e "s/$host/HOST/" + +# success, all done +status=0 +exit |