mirror of
https://github.com/netdata/netdata.git
synced 2025-04-14 17:48:37 +00:00

* script_pattern: Fix script and bring pattern This commit fixes the error given by shellckeck on stress.sh and brings a pattern for the other scripts, no less important its given the possibility to change the url from outside of the scripts * script_pattern: shellcheke Correct the request.sh after to change it to avoid warning errors from shellchecker * script_pattern: Remove of garbage value With this PR I am removing the garbage value of a script * script_pattern: Restore color These 3 scripts changed in this commit was not restoring the terminal color, this commit fixes this
89 lines
2.1 KiB
Bash
89 lines
2.1 KiB
Bash
#!/bin/bash
|
|
|
|
#The health directory to put the alarms
|
|
HEALTHDIR="@configdir_POST@/health.d/"
|
|
|
|
#output directory
|
|
OUTDIR="workdir/"
|
|
|
|
#url to do download
|
|
QUERY="/api/v1/alarms?active"
|
|
MURL="http://localhost:19999$QUERY"
|
|
|
|
#error messages
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
NOCOLOR='\033[0m'
|
|
|
|
MYCDIR="$(pwd)"
|
|
CONFFILE="$MYCDIR/netdata.conf"
|
|
|
|
change_alarm_file() {
|
|
if [ -f "$1" ]; then
|
|
rm "$1"
|
|
fi
|
|
|
|
#copy keeping the permissions
|
|
cp -a "$2" "$3"
|
|
}
|
|
|
|
netdata_test_download() {
|
|
OPT="-e"
|
|
if [ "$3" == "I" ]; then
|
|
OPT="-v"
|
|
fi
|
|
|
|
grep "HTTP/1.1 200 OK" "$1" 2>/dev/null 1>/dev/null
|
|
TEST="$?"
|
|
if [ "$TEST" -ne "0" ]; then
|
|
echo -e "${RED} Error to get the alarms. ${NOCOLOR}"
|
|
kill "$5"
|
|
rm "$HEALTHDIR/ram.conf"
|
|
exit 1
|
|
fi
|
|
|
|
COUNT=$(grep -w "\"last_repeat\":" "$2" | grep -c "$OPT" "\"0\"")
|
|
if [ "$COUNT" -eq "0" ]; then
|
|
echo -e "${RED} Netdata gave an unexpected result when alarm repetition is $4 ${NOCOLOR}"
|
|
killall "$5"
|
|
rm "$HEALTHDIR/ram.conf"
|
|
exit 1
|
|
fi
|
|
|
|
echo -e "${GREEN} I got the expected result ${NOCOLOR}"
|
|
}
|
|
|
|
get_the_logs() {
|
|
curl -v -k --create-dirs -o "$OUTDIR/$1.out" "$MURL" 2> "$OUTDIR/$1.err"
|
|
netdata_test_download "$OUTDIR/$1.err" "$OUTDIR/$1.out" "$2" "$3" "$4"
|
|
}
|
|
|
|
process_data() {
|
|
SEC=120
|
|
netdata -c "$CONFFILE" -D &
|
|
NETDATAPID=$!
|
|
echo -e "${NOCOLOR}Sleeping during $SEC seconds to create alarm entries"
|
|
sleep $SEC
|
|
get_the_logs "$1" "$2" "$3" "$NETDATAPID"
|
|
kill $NETDATAPID
|
|
}
|
|
|
|
mkdir "$OUTDIR"
|
|
CREATEDIR="$?"
|
|
if [ "$CREATEDIR" -ne "0" ]; then
|
|
echo -e "${RED}Cannot create the output directory, it already exists. The test will overwrite previous results. ${NOCOLOR}"
|
|
fi
|
|
|
|
change_alarm_file "./0" "ram_without_repetition.conf" "$HEALTHDIR/ram.conf"
|
|
cp -a netdata.conf_without_repetition netdata.conf
|
|
process_data "ram_without" "K" "not activated."
|
|
rm netdata.conf
|
|
|
|
change_alarm_file "$HEALTHDIR/ram.conf" "ram_with_repetition.conf" "$HEALTHDIR/ram.conf"
|
|
cp -a netdata.conf_with_repetition netdata.conf
|
|
process_data "ram_with" "I" "activated."
|
|
rm netdata.conf
|
|
|
|
echo -e "${GREEN} all the tests were sucessful ${NOCOLOR}"
|
|
rm "$HEALTHDIR/ram.conf"
|
|
rm -rf $OUTDIR
|