Portál AbcLinuxu, 5. května 2025 16:48
Dobrý den, pro monitoring našich serverů používáme mimo jiné jednoduchý bashový skript, jehož zjednodušený kód přikládám. Na většině serverů funguje v pořádku, ale máme problematickou jednu kombinaci. U Wedosu máme jeden dedikovaný server rozdělený na virtuálky - jedna s Debianem (hostname asterix) občas failne s kontrolou kurvafix (Francie). Současně se vždy spouští traceroute a wget.
urls[0]="http://asterix.mathesio.com/check.php"
urls[1]="http://www.matesova.cz/check.php"
urls[2]="http://kurvafix.mathesio.com/check.php"
...
# Count urls
count=${#urls[*]} (( --count ))
# Iterate
for i in $(seq 0 $count)
do
#Try download
echo "" > /tmp/check_trace
traceroute "$(echo "${urls[i]}" | grep -o -E "//(.*)/" | sed 's*/**g')" > /tmp/check_trace &
output=$(wget "${urls[i]}" -4 -O /tmp/check_status -v 2>&1)
if [ "$?" != "0" ]
then # Can't download
report_error "${urls[i]}" "wget connection fail" "$output"
else
if [ ! $(cat /tmp/check_status) = "ok" ]
then # Content is not ok
report_error "${urls[i]}" "$(cat /tmp/check_status)" "$output"
fi
fi
....
sleep 5;
done;
Informace z chyby jsou:
Neprosla kontrola serveru http://kurvafix.mathesio.com/check.php - wget connection fail cas: Po čec 4 12:54:26 CEST 2016, wget: --2016-07-04 12:54:11-- http://kurvafix.mathesio.com/check.php Překládám kurvafix.mathesio.com (kurvafix.mathesio.com)… 81.91.83.19 Navazuje se spojení s kurvafix.mathesio.com (kurvafix.mathesio.com)|81.91.83.19|:80… spojeno. HTTP požadavek odeslán, program čeká na odpověď… 404 Not Found 2016-07-04 12:54:21 CHYBA 404: Not Found., traceroute:
traceroute to kurvafix.mathesio.com (51.254.224.144), 30 hops max, 60 byte packets
1 ded-gw-107.wedos.net (46.28.107.1) 0.182 ms 0.154 ms 0.148 ms
2 r4-a.wedos.net (46.28.104.10) 3.277 ms 3.601 ms 4.093 ms
3 te0-7-0-21.ccr21.prg01.atlas.cogentco.com (149.6.24.145) 3.269 ms 3.414 ms 3.415 ms
4 be2078.ccr42.ham01.atlas.cogentco.com (130.117.0.165) 11.477 ms 11.484 ms 11.473 ms
5 be2797.ccr41.fra03.atlas.cogentco.com (154.54.58.225) 19.568 ms be2798.ccr42.fra03.atlas.cogentco.com (154.54.58.229) 19.744 ms be2797.ccr41.fra03.atlas.cogentco.com (154.54.58.225) 19.571 ms
6 be2800.ccr42.par01.atlas.cogentco.com (154.54.58.238) 29.051 ms be2799.ccr41.par01.atlas.cogentco.com (154.54.58.234) 28.917 ms be2800.ccr42.par01.atlas.cogentco.com (154.54.58.238) 29.055 ms
7 be12309.ccr21.par04.atlas.cogentco.com (154.54.39.66) 31.036 ms 29.364 ms be12308.ccr21.par04.atlas.cogentco.com (130.117.49.42) 30.852 ms
8 be99-171.th2-1-a9.fr.eu (37.187.36.38) 25.245 ms 25.305 ms 25.215 ms
9 be1-1177.sbg-g1-a9.fr.eu (94.23.122.118) 25.544 ms 25.673 ms 25.608 ms
10 vl20.sbg-g1-a75.fr.eu (178.33.103.201) 24.950 ms 25.028 ms 25.014 ms
11 be50-5.sbg-4a-a9.fr.eu (188.165.9.70) 25.822 ms 27.435 ms 25.763 ms
12 kurvafix.mathesio.com (51.254.224.144) 25.066 ms 25.041 ms 25.039 ms
Jak z této informace vyplívá, tak wget resolvnul pro kurvafix.mathesio.com IP 81.91.83.19, která ovšem patří dříve kontrolovanému serveru. Traceroute to však resolvnul v pořádku.
wget --version GNU Wget 1.13.4 sestaven na systému linux-gnu. +digest +https +ipv6 +iri +large-file +nls -ntlm +opie +ssl/gnutls Wgetrc: /etc/wgetrc (globální) Národní prostředí: /usr/share/locale Přeloženo: gcc -DHAVE_CONFIG_H -DSYSTEM_WGETRC="/etc/wgetrc" -DLOCALEDIR="/usr/share/locale" -I. -I../lib -I../lib -D_FORTIFY_SOURCE=2 -Iyes/include -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -DNO_SSLv2 -D_FILE_OFFSET_BITS=64 -g -Wall Slinkováno: gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -DNO_SSLv2 -D_FILE_OFFSET_BITS=64 -g -Wall -Wl,-z,relro -Lyes/lib -lgnutls -lgcrypt -lgpg-error -lz -lidn -lrt ftp-opie.o gnutls.o ../lib/libgnu.a Copyright © 2009 Free Software Foundation, Inc.
Nějaké nápady kde hledat chybu, či kde co opravit? K chybě dochází zcela náhodně, nepravidelně - někdy 2x za den, jindy 1x za týden.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.