Prípadová štúdia

Prípadová štúdia: infraštruktúra na testovanie chybových ciest pomocou Application Verifier

Technická prípadová štúdia o tom, ako sme pomocou Application Verifier najprv vybudovali infraštruktúru na testovanie chybových ciest a nadviazali na ňu prevenciou opakovania chýb.

Prehľad prípadu

Pri tomto prípade sme nezostali pri jednorazovej oprave chyby, ale pomocou nástroja Application Verifier sme vybudovali samotnú infraštruktúru na testovanie chybových ciest. Cieľom nebolo iba nájsť súčasnú poruchu, ale najprv pripraviť stav, v ktorom sa bude ďalšia porucha dať vystopovať ľahšie.

Príznaky

  • Samotné testy bežných scenárov len ťažko odhalia problémy v chybových cestách (failure path).
  • Problémy pri nedostatku zdrojov a chyby handleov sa prejavujú najmä v podmienkach blízkych ostrej prevádzke.
  • Postup vyšetrovania sa pri každom prípade ľahko viaže na konkrétnych ľudí.

Obmedzenia

  • Skutočné vyčerpanie zdrojov na reálnom zariadení je nákladné aj rizikové.
  • Chceme čo najskôr zviditeľniť, ako sa pokazí hranica natívneho kódu a oblasť okolo Win32.
  • Riešenie musí byť upravené tak, aby sa dalo použiť aj pri ďalšom vyšetrovaní poruchy.

Čo sme sledovali

  • Nastavenia nástroja Verifier, napríklad Handles, Heaps a Low Resource Simulation.
  • Stopy chybových ciest vrátane !htrace a page heap.
  • Prepojenie medzi vlastným logom životného cyklu a informáciami o zastavení v nástroji Verifier.

Ako sme problém izolovali

Najprv sme oddelili to, čo sa dá sledovať už len pomocou bežných logov, od toho, čo sa bez nástroja Verifier nezobrazí. Potom sme nástroj Verifier nasadili na vykonávaciu cestu zabalenú do testovacieho harnessu a zamerali sme sa na to, aby sme ťažko reprodukovateľné anomálie odhalili skôr.

Ako sme situáciu zlepšili

  • Vybudovali sme testovaciu infraštruktúru, ktorá chybové cesty zámerne vyvoláva.
  • Chyby handleov a haldy možno pozorovať v kratšej slučke.
  • Miesta pozorovania sme usporiadali tak, aby sa dali ľahko vrátiť do následnej revízie návrhu a opatrení proti opakovaniu chýb.

Služby, s ktorými sa tento prípad spája

Tento prípad priamo súvisí so službou Vyšetrovanie chýb a analýza príčin, ktorá sa venuje reprodukcii porúch a určovaniu ich príčin. Zároveň sa viaže na službu Technické konzultácie a revízia návrhu, v rámci ktorej usporadúvame, ako hlboko majú byť testy chybových ciest a miesta pozorovania zapracované do návrhu.

Požiadajte o konzultáciu

Ak je táto stránka blízka situácii, ktorú riešite, poraďte sa s nami a opíšte nám súčasný kontext a druh podpory, ktorú potrebujete.

Späť na domovskú stránku