प्रॉक्सी एकदा अपयशी होतो. नंतरच्या विनंत्या यशस्वी होतात, तरीही देखरेख करणारा अजून एक अपयश जाहीर करत राहतो. स्क्रिप्टने कालची निर्गम स्थिती लक्षात ठेवली होती का ते तपासा.

हा नमुना व्हेरिएबल फक्त तेव्हाच अद्ययावत करतो जेव्हा curl अपयशी होतो:

status=0
# Repeated inside a loop:
curl ... || status=$?

पहिल्या शून्येतर निकालानंतर, यशस्वी पुनरावृत्ती status ला अस्पर्शित ठेवते. फक्त curl यशस्वी झाला म्हणून ते शून्य होत नाही.

त्याऐवजी सध्याच्या आदेशावर शाखा करा:

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

पत्ता आणि वेळा उदाहरणासाठी आहेत. हे जुने व्हेरिएबल काढून टाकते; कोणती पुनर्प्राप्ती कृती योग्य आहे हे ठरवत नाही.

निरीक्षण संकुचित ठेवा. विनंती प्रॉक्सी, पुढील मार्ग, गंतव्य, TLS पडताळणी आणि HTTP निकालावर अवलंबून असते. SOCKS सेवा निरोगी असतानाही लक्ष्यातील व्यत्यय ती अपयशी करू शकतो. अनपेक्षित HTTP 200 पृष्ठ देखील अपेक्षित सामग्री न देता केवळ स्थिती-आधारित तपासणी उत्तीर्ण होऊ शकते.

नियंत्रित प्रतिसाद करार निवडा आणि अपयशाचा टप्पा टिकवून ठेवा. प्रत्येक शून्येतर curl निकालावर प्रॉक्सी पुन्हा सुरू केल्यास निरोगी सत्रे व्यत्ययित होऊ शकतात आणि खरी गंतव्य समस्या स्पर्श न करता राहते.

संबंधित लेख