Jūs izslēdzat vienu lietotni no VPN, un nepieciešamā lejupielāde joprojām neizdodas vai, vēl ļaunāk, sāk darboties un kaut kas nesaistīts apstājas. Redzamais logs ne vienmēr ir process, kas atver katru savienojumu: lietotne var nodot darbu palīgam, fona pārsūtīšanas pakalpojumam vai pavisam citai pakotnei. Tāpēc kārtulai katrai lietotnei ir vajadzīgs īstais platformas identitātes modelis, nevis pazīstams palaišanas faila nosaukums. Zemāk minētās pārbaudes sākas ar novērojumu un atgriežas pie tā, kurš pieprasījumu patiešām nosūtīja.

Šajos tiketos parasti vienlaikus sabrūk divas lietas: tiek izslēgta nepareizā komponente, un izņēmums pēc tam nekad netiek sašaurināts.

Atrodiet procesu, nevis logu

Atkārtojiet neizdevušos darbību un, kamēr tā notiek, identificējiet procesu vai pakotni, kurai pieder savienojums. Windows tas ir cits jautājums nekā tas, kuram logam ir fokuss, jo fona pārsūtīšanu var starpniekot pakalpojums, kas darbojas ar savu identitāti. Linux un macOS tā pati šķelšanās parādās kā palīgprocesi un sistēmas dēmoni.

Pierakstiet trīs detaļas: izpildfaila vai pakotnes identitāti, galamērķi, ar kuru tas sazinājās, un brīdi darbplūsmā, kad tas notika. Lejupielāde, kas neizdodas sākumā, bieži ir metadatu iegūšana ar citu komponenti nekā lejupielāde, kas neizdodas pusceļā. Ar šo atšķirību vien parasti pietiek, lai izvēlētos pareizo identitāti pirms kārtulas aiztikšanas. Ja identitāte izrādās pakalpojums, nevis lietotne, šis viens fakts maina visu kārtulu, tāpēc vispirms to noskaidrojiet.

Ja nevarat novērot procesu, jo darbība ir pārāk īsa, atkārtojiet to ar lielāku datu apjomu vai lēnāku galamērķi. Mērķis ir viens atkārtojams novērojums, nevis teorija par to, kurš palīgs ir iesaistīts.

Uztveriet DNS kā savu ceļu

Sistēmas vārdu izšķiršana var vispār neievērot izslēgto lietotni, tāpēc izslēgts pārlūks joprojām var neizdoties uz privātu resursdatora vārdu, lai gan tā datplūsma ir pareizi ārpus tuneļa. Pārlūks bija izslēgts; izšķirējs ne.

Pārbaudiet, ko platforma dara ar DNS, kad tiek piemērota kārtula katrai lietotnei, un pārbaudiet to atsevišķi no HTTP pieprasījuma. Ja izšķirējs ir koplietots pakalpojums, tas apkalpo katru ierīces lietotni, tāpēc apsveramajam izņēmumam ir daudz plašāka auditorija nekā pārbaudītajam.

Pierakstiet, kurš izšķirējs atbildēja un pa kuru saskarni. Šis viens novērojums atrisina lielu daļu ziņojumu «lietotne ir izslēgta, bet vārds netiek izšķirts», tāpēc glabājiet to kopā ar ticketu.

Nepaplašiniet koplietotu palīgu

Koplietots pakalpojums veic darbu vairākām lietotnēm, tāpēc tā izslēgšana vienas darbplūsmas labošanai maina arī nesaistītu datplūsmu. Windows Background Intelligent Transfer Service ir labs šīs formas piemērs: tā ir infrastruktūra, ko var izmantot daudzas lietotnes, un tās identitāte nav tās lietotnes identitāte, kura pieprasīja pārsūtīšanu.

Pirms šī izņēmuma pievienošanas pārbaudiet klienta atbalstīto kārtulu modeli un organizācijas prasības. Pajautājiet, kas vēl izmanto komponenti, un vai kārtulu, kuru gatavojaties rakstīt, var izteikt attiecībā pret galamērķiem, nevis pret koplietotu procesu.

Ja prasību vispār nevar izteikt kā lietotnes robežu, uz galamērķiem balstīta politika vai cits apstiprināts dizains var būt saprotamāks un drošāks par augošu palīgu izņēmumu sarakstu.

Pārbaudiet visu darbplūsmu, nevis neizdevušos soli

Pēc atbalstītas izmaiņas izpildiet paredzēto uzdevumu ar jaunu pieprasījumu no sākuma līdz beigām. Pēc tam izpildiet vēl vienu darbplūsmu, kas izmanto koplietoto komponenti, jo tieši tur plaša apiešana paziņo par sevi. Labojums, kas salabo pirmo un klusi salauž otro, nav labojums. Saglabājiet abus rezultātus tiketā un skaidri nosauciet otro darbplūsmu, lai recenzents to varētu atkārtot.

Turiet testu mazu un atkārtojamu: tas pats galamērķis, tas pats konts, tie paši nosacījumi. Ja otrā darbplūsma nav dokumentēta, pajautājiet tās īpašniekam, no kā tā ir atkarīga, pirms nolemjat, ka izmaiņas ir drošas.

Atstājiet iemeslu, nevis vārdu sarakstu

Dokumentējiet komponenti, darbplūsmu, kurai tā kalpo, un iemeslu, kāpēc tā tika izslēgta. Palīgu vārdu saraksts bez saistīta mērķa divu izlaidumu ciklu laikā kļūst neuzturams, un nākamais inženieris, tīrot to, noņem nepareizo ierakstu.

Ar vienu rindu katram izņēmumam pietiek: kas sabrūk bez tā, kam pieder šī darbplūsma un kad tā pēdējo reizi tika pārbaudīta. Šie trīs lauki pārvērš noslēpumainu sarakstu politikā, ko kāds var aizstāvēt.

Saistītie raksti