Għaliex verifika tal-proxy fil-shell tibqa' falluta wara li jirnexxi curl
Evita li żżomm falliment qadim ta' curl f'varjabbli tal-shell wara li jirnexxu verifiki tal-proxy aktar tard.
Il-proxy jfalli darba. It-talbiet aktar tard jirnexxu, iżda l-watchdog ikompli jħabbar falliment ieħor. Iċċekkja jekk l-iskript ftakarx fl-istat tal-ħruġ tal-bieraħ.
Dan il-mudell jaġġorna l-varjabbli biss meta jfalli curl:
status=0
# Repeated inside a loop:
curl ... || status=$?
Wara l-ewwel riżultat mhux żero, iterazzjoni li tirnexxi tħalli status mingħajr ma tmissu. Ma jsirx żero sempliċement għax irnexxa curl.
Minflok, ikkundizzjona fuq il-kmand attwali:
if curl --proxy socks5h://127.0.0.1:1080 --noproxy '' \
--fail --silent --show-error --connect-timeout 3 --max-time 10 \
https://health.example/ >/dev/null; then
echo "check succeeded"
else
echo "check failed"
fi
L-indirizz u l-ħinijiet huma illustrattivi. Dan ineħħi l-varjabbli antik; ma jiddeċidix liema azzjoni ta' rkupru hija xierqa.
Żomm l-osservazzjoni dejqa. It-talba tiddependi mill-proxy, mir-rotta 'l quddiem, mid-destinazzjoni, mill-verifika TLS u mir-riżultat HTTP. Waħda fid-destinazzjoni tista' tfalliha filwaqt li s-servizz SOCKS ikun f'saħħtu. Paġna HTTP 200 mhux mistennija tista' wkoll tgħaddi verifika bbażata biss fuq l-istat mingħajr ma tipprovdi il-kontenut mistenni.
Agħżel kuntratt ta' tweġiba kkontrollat u żomm il-fażi tal-falliment. L-istartjar mill-ġdid tal-proxy f'kull riżultat curl mhux żero jista' jfixkel sessjonijiet f'saħħithom filwaqt li l-problema vera tad-destinazzjoni tibqa' mhux mittiefsa.