Test tal-kill switch: ikejjel il-vojt, mhux biss ir-rikonnessjoni
Rikonnessjoni rapida turi li l-klijent huwa rapidu. Irreġistra x’ħareġ mill-magna matul il-vojt, flimkien mat-trigger li użajt, inkella t-test kejjel biss nofsu.
Rikonnessjoni li tintemm f’sekonda tgħidlek li l-klijent huwa rapidu. Ma tgħidlekx jekk ħareġx xi ħaġa waqt li t-tunnel kien mitfi. Rikonnessjoni li tieħu minuta tgħidlek li l-klijent huwa bil-mod, u xorta ma tgħidlekx jekk it-traffiku dirett kienx permess fil-vojt. Dawn huma żewġ kejlijiet, u test tal-kill switch li jirrapporta biss l-ewwel wieħed ma jkunx ittestja l-iswiċċ.
Żewġ osservazzjonijiet, żewġ verdetti separati
Il-mistoqsija tad-disponibbiltà hija sempliċi: meta t-tunnel sar użabbli mill-ġdid, u jekk l-applikazzjoni protetta kellhiex bżonn konnessjoni ġdida biex tasal hemm. Il-mistoqsija tal-infurzar hija differenti: liema pakketti ħarġu mill-magna mill-mument li waqgħet il-protezzjoni sal-mument li rritornat.
Wiebebhom b’rekords separati. Linja waħda tgħid li l-vojt dam ċertu numru ta’ sekondi. Linja oħra tgħid jekk talba mhux protetta rnexxietx f’dak il-vojt. Li tgħaqqadhom f’wieħed għadda jew falla jaħbi l-każ li jgħodd l-aktar: rikonnessjoni rapida b’tnixxija.
Ibni sonda li tista’ tkejjel il-ħin tagħha
Uża talba li hija ħielsa mill-ħsara, irħisa u indipendenti mill-kanal ta’ kontroll tat-tunnel innifsu. Il-linja t’hawn taħt tipprintja timestamp, status HTTP u l-ħin li għadda darba kull sekonda, u tfalli b’ħoss qawwi minflok ma tħanġel:
while true; do
printf '%s ' "$(date +%H:%M:%S)"
curl -sS -o /dev/null -w '%{http_code} %{time_total}\n' --max-time 2 https://example.com || echo "curl-exit-$?"
sleep 1
done
Aqra l-kodiċijiet tal-ħruġ ta’ curl, mhux biss l-istatus. 28 ifisser li t-talba skadiet, hekk tidher rotta mblukkata. 6 ifisser li r-riżoluzzjoni tal-ismijiet falliet, li hija sejba differenti u spiss l-aktar interessanti. 200 b’ħin qasir li għadda fil-vojt ifisser li t-traffiku tħalla joħroġ.
Ikteb l-output f’fajl u żommu. L-istorja tat-terminal mhix prova, u l-parti interessanti normalment hija tliet linji fin-nofs.
Ikkawża falliment reali, mhux wieħed pulit
L-iskonnessjoni mill-menu tal-klijent stess tittestja r-rotta kooperattiva, fejn il-klijent ikollu l-ħin jinstalla r-regoli tal-imblukkar tiegħu. Oqtol il-proċess minflok, jew aqta’ l-link ta’ taħt, u tittestja r-rotta li jieħu falliment reali.
Kull trigger jeżerċita rotta tal-kodiċi differenti. Waħda fis-server, telf ta’ link lokali u ħabta tal-klijent jistgħu kull wieħed iħallu stat differenti, u wieħed minnhom x’aktarx ikun il-każ li fl-aħħar issib. Mexxi s-sonda fuq mill-inqas żewġ triggers u ttikkjetti r-riżultati skont it-trigger.
Aqra l-log biex tara kif jidher it-traffiku permess
200 jew falliment mgħaġġel tal-konnessjoni fil-vojt hija tnixxija, lejn liema direzzjoni tkun. Skadenzji tul il-vojt kollu huma l-forma mistennija ta’ politika tal-imblukkar. Riżoluzzjoni tal-ismijiet li tirnexxi waqt li l-konnessjonijiet ifallu tissuġġerixxi li r-riżolver għadu jintlaħaq, li hija tnixxija ta’ tip ieħor.
Is-sockets eżistenti jeħtieġu attenzjoni. Programm jista’ jkompli juża konnessjoni li fetaħ qabel l-iskonnessjoni, għalhekk traffiku li jidher ħaj jista’ ma jippruvax li rotta ġdida kienet permessa. Il-lista tas-sockets turi jekk konnessjoni hijiex eqdem mill-avveniment:
ss -tunp | grep -E 'ESTAB|SYN-SENT' ip route get 198.51.100.7 resolvectl status | sed -n '1,20p'
Qabbel il-ħin tal-bidu tas-socket mat-timestamp tal-iskonnessjoni. Konnessjoni eqdem mill-waqgħa hija prova ta’ użu mill-ġdid tas-socket, mhux ta’ tnixxija, u li tirrapportaha bħala falliment tibgħat lill-persuna li jmiss tfittex bug li ma jeżistix.
Irreġistra r-riżultat f’forma li tgħaddi minn aġġornament
Ikteb it-trigger, il-vojt f’sekondi, jekk xi talba mhux imblukkata rnexxietx, jekk ir-riżoluzzjoni tal-ismijiet rnexxietx, u l-verżjonijiet tal-klijent u tas-sistema operattiva. Dak is-sett ta’ ħames fatti jista’ jitqabbel bejn rilaxxi, xi ħaġa li paragrafu ta’ proża ma jistax jagħmel.
Erġa’ mexxi l-istess test wara aġġornament tal-klijent jew bidla fil-profil, għax l-imġiba tal-imblukkar hija dettall tal-implimentazzjoni u tiċċaqlaq. L-iskop tar-rekord huwa li tinnota l-moviment qabel ma jsir inċident, mhux li tiċċertifika l-klijent darba.