test: Make prometheus tests safer and more verbose

This commit is contained in:
Felix Frank
2020-02-05 20:16:35 +01:00
committed by James Shubin
parent 3408961155
commit 013439af6d
3 changed files with 55 additions and 8 deletions

View File

@@ -76,3 +76,6 @@ cleanup
run_usergroup_test "exec-usergroup-${GROUP}.yaml" "nobody" "${GROUP}"
run_usergroup_test "exec-usergroup-user.yaml" "nobody" ""
run_usergroup_test "exec-usergroup-group-${GROUP}.yaml" "" "${GROUP}"
# avoid race against rm command from the shell test wrapper
sleep 1

View File

@@ -2,17 +2,39 @@
. "$(dirname "$0")/../util.sh"
TEMPFILE=`mktemp mgmt-tests-XXXXXXXX`
cleanup()
{
killall -SIGINT mgmt # send ^C to exit mgmt
rm -f $TEMPFILE
wait $pid # get exit status
}
grep_or_fail()
{
cat >$TEMPFILE
grep "$1" $TEMPFILE && return
echo >&2 "ERROR: expected pattern '$1' not found"
echo >&2 "output was:"
cat >&2 $TEMPFILE
exit 1
}
# run empty graph, with prometheus support
$TIMEOUT "$MGMT" run --tmp-prefix --prometheus empty &
pid=$!
trap cleanup EXIT
sleep 5s # let it converge
# TODO: Find out why this is not happening anymore, or remove this particular check
# Check that etcd metrics are loaded
curl 127.0.0.1:9233/metrics | grep "^etcd_server_has_leader 1"
#curl -s 127.0.0.1:9233/metrics | grep_or_fail "^etcd_server_has_leader 1"
# Check that go metrics are loaded
curl 127.0.0.1:9233/metrics | grep "^go_goroutines [0-9]\+"
curl -s 127.0.0.1:9233/metrics | grep_or_fail "^go_goroutines [0-9]\+"
killall -SIGINT mgmt # send ^C to exit mgmt
wait $pid # get exit status
trap - EXIT
cleanup
exit $?

View File

@@ -2,17 +2,39 @@
. "$(dirname "$0")/../util.sh"
TEMPFILE=`mktemp mgmt-tests-XXXXXXXX`
cleanup()
{
killall -SIGINT mgmt # send ^C to exit mgmt
rm -f $TEMPFILE
wait $pid # get exit status
}
grep_or_fail()
{
cat >$TEMPFILE
grep "$1" $TEMPFILE && return
echo >&2 "ERROR: expected pattern '$1' not found"
echo >&2 "output was:"
cat >&2 $TEMPFILE
exit 1
}
# run empty graph, with prometheus support
$TIMEOUT "$MGMT" run --tmp-prefix --prometheus --prometheus-listen :52637 empty &
pid=$!
trap cleanup EXIT
sleep 5s # let it converge
# TODO: Find out why this is not happening anymore, or remove this particular check
# Check that etcd metrics are loaded
curl 127.0.0.1:52637/metrics | grep "^etcd_server_has_leader 1"
#curl -s 127.0.0.1:52637/metrics | grep_or_fail "^etcd_server_has_leader 1"
# Check that go metrics are loaded
curl 127.0.0.1:52637/metrics | grep "^go_goroutines [0-9]\+"
curl -s 127.0.0.1:52637/metrics | grep_or_fail "^go_goroutines [0-9]\+"
killall -SIGINT mgmt # send ^C to exit mgmt
wait $pid # get exit status
trap - EXIT
cleanup
exit $?