Traċċar imqassam: għamilna kollox ħażin

Nota. transl.: L-awtur ta 'dan il-materjal huwa Cindy Sridharan, inġinier f'imgix li jispeċjalizza fl-iżvilupp tal-API u, b'mod partikolari, l-ittestjar tal-mikroservizz. F'dan il-materjal, hija taqsam il-viżjoni dettaljata tagħha tal-problemi attwali fil-qasam tat-traċċar distribwit, fejn, fl-opinjoni tagħha, hemm nuqqas ta 'għodod tassew effettivi biex issolvi problemi urġenti.

Traċċar imqassam: għamilna kollox ħażin
[Illustrazzjoni meħuda minn materjal ieħor dwar traċċar imqassam.]

Huwa maħsub li traċċar imqassam diffiċli biex tiġi implimentata, u r-ritorn fuqha dubjuż fl-aħjar. Hemm ħafna raġunijiet għaliex it-traċċar huwa problematiku, ħafna drabi jiċċita x-xogħol involut fil-konfigurazzjoni ta 'kull komponent tas-sistema biex jittrasmetti l-intestaturi xierqa ma' kull talba. Għalkemm din il-problema teżisti, bl-ebda mod mhi insormontabbli. Mill-mod, ma jispjegax għaliex l-iżviluppaturi ma tantx iħobbu t-traċċar (anke meta diġà qed jaħdem).

L-isfida ewlenija bit-traċċar imqassam mhix il-ġbir tad-dejta, l-istandardizzazzjoni tal-formati għad-distribuzzjoni u l-preżentazzjoni tar-riżultati, jew id-determinazzjoni ta’ meta, fejn u kif jittieħdu kampjuni. Mhux qed nipprova nimmaġina trivjali dawn il-"problemi ta' komprensibbiltà" huma, fil-fatt, pjuttost sinifikanti tekniċi u (jekk qed nikkunsidraw verament Open Source) standards u protokolli) sfidi politiċi li jeħtieġ li jingħelbu sabiex dawn il-problemi jitqiesu solvuti.

Madankollu, jekk nimmaġinaw li dawn il-problemi kollha jiġu solvuti, hemm probabbiltà kbira li xejn ma jinbidel b'mod sinifikanti f'termini ta' esperjenza tal-utent finali. It-traċċar xorta jista' ma jkunx ta' użu prattiku fl-aktar xenarji ta' debugging komuni—anke wara li jkun ġie skjerat.

Traċċa differenti bħal din

It-traċċar distribwit jinkludi diversi komponenti differenti:

  • it-tagħmir ta' applikazzjonijiet u middleware b'għodod ta' kontroll;
  • trasferiment tal-kuntest distribwit;
  • ġbir ta' traċċi;
  • ħażna ta' traċċi;
  • l-estrazzjoni u l-viżwalizzazzjoni tagħhom.

Ħafna diskors dwar it-traċċar distribwit għandu t-tendenza li jittrattaha bħala tip ta 'operazzjoni unarja li l-uniku għan tagħha huwa li tgħin id-dijanjosi bis-sħiħ tas-sistema. Dan huwa l-aktar dovut għal kif storikament ġew iffurmati ideat dwar traċċar distribwit. IN entrati fil-blog, magħmul meta nfetħu s-sorsi Zipkin, issemma li huwa [Zipkin] jagħmel Twitter aktar mgħaġġel. L-ewwel offerti kummerċjali għat-traċċar ġew ukoll promossi bħala Għodod APM.

Nota. transl.: Biex tagħmel aktar test aktar faċli biex jinftiehem, ejjew niddefinixxu żewġ termini bażiċi skond Dokumentazzjoni tal-proġett OpenTracing:

  • Span — l-element bażiku tat-traċċar distribwit. Hija deskrizzjoni ta 'ċertu fluss tax-xogħol (per eżempju, mistoqsija ta' database) b'isem, ħinijiet tal-bidu u tat-tmiem, tikketti, zkuk u kuntest.
  • Il-firxiet tipikament fihom links ma 'firxiet oħra, li jippermettu li jiġu kkombinati medda multipli Traċċa — viżwalizzazzjoni tal-ħajja ta' talba hekk kif din timxi permezz ta' sistema distribwita.

It-traċċi fihom dejta oerhört siewja li tista 'tgħin f'kompiti bħall-ittestjar tal-produzzjoni, l-ittestjar tal-irkupru minn diżastri, l-ittestjar tal-injezzjoni ta' żball, eċċ. Fil-fatt, xi kumpaniji diġà jużaw it-traċċar għal skopijiet simili. Ejja nibdew bi trasferiment tal-kuntest universali għandu użi oħra minbarra sempliċement iċċaqlaq medda għas-sistema tal-ħażna:

  • Per eżempju, Uber użi riżultati tat-traċċar biex jiddifferenzjaw bejn it-traffiku tat-test u t-traffiku tal-produzzjoni.
  • facebook użi traċċa data għall-analiżi tal-passaġġ kritiku u għall-bidla tat-traffiku waqt testijiet regolari ta 'rkupru minn diżastri.
  • Ukoll netwerk soċjali japplika Notebooks Jupyter li jippermettu lill-iżviluppaturi jmexxu mistoqsijiet arbitrarji dwar ir-riżultati tat-traċċa.
  • Segwaċi LDFI (Injezzjoni ta' Ħsara Mmexxija minn Nisel) użu traċċi mqassma għall-ittestjar b'injezzjoni ta 'żball.

L-ebda waħda mill-għażliet elenkati hawn fuq ma tapplika għal kollox għax-xenarju debugging, li matulha l-inġinier jipprova jsolvi l-problema billi jħares lejn it-traċċa.

Meta tiġi s'issa jilħaq l-iskrittura tad-debugging, l-interface primarja tibqa 'd-dijagramma traceview (għalkemm xi wħud isejħuha wkoll "Ċart ta' Gantt" jew "dijagramma tal-kaskata"). Taħt traceview я qed infisser il-firxiet kollha u l-metadata ta' akkumpanjament li flimkien jiffurmaw it-traċċa. Kull sistema ta' traċċar ta' sors miftuħ, kif ukoll kull soluzzjoni ta' traċċar kummerċjali, toffri a traceview interface tal-utent għall-viżwalizzazzjoni, id-dettalji u l-iffiltrar tat-traċċi.

Il-problema bis-sistemi kollha ta 'traċċar li rajt s'issa hija li r-riżultat viżwalizzazzjoni (traceview) kważi kompletament tirrifletti l-karatteristiċi tal-proċess ta 'ġenerazzjoni ta' traċċi. Anke meta jiġu proposti viżwalizzazzjonijiet alternattivi: mapep tas-sħana, topoloġiji tas-servizz, istogrammi ta’ latenza, xorta waħda fl-aħħar jinżlu għal traceview.

Fil-passat jien ilmenta li ħafna mill-"innovazzjonijiet" fit-traċċar UI/UX jidhru li huma limitati għal tixgħel metadata addizzjonali fit-traċċa, investiment fihom informazzjoni b'kardinalità għolja (kardinalità għolja) jew jipprovdu l-abbiltà li drill down f'firxiet speċifiċi jew imexxu mistoqsijiet inter- u intra-traċċa... Fejn traceview jibqa 'l-għodda ta' viżwalizzazzjoni primarja. Sakemm dan l-istat ta 'affarijiet ikompli, it-traċċar distribwit (fl-aħjar) jieħu r-4 post bħala għodda ta' debugging, wara metriċi, zkuk u traċċi ta 'munzell, u fl-agħar każ jirriżulta li jkun ħela ta' flus u ħin.

Problema bit-traceview

Skop traceview — tipprovdi stampa sħiħa tal-moviment ta' talba waħda fil-komponenti kollha tas-sistema distribwita li magħha hija relatata. Xi sistemi ta 'traċċar aktar avvanzati jippermettulek tħaffer f'firxiet individwali u tara tqassim maż-żmien внутри proċess wieħed (meta l-firxiet ikollhom konfini funzjonali).

Il-premessa bażika tal-arkitettura tal-mikroservizzi hija l-idea li l-istruttura organizzattiva tikber mal-ħtiġijiet tal-kumpanija. Proponenti tal-mikroservizzi jargumentaw li t-tqassim ta’ diversi kompiti tan-negozju f’servizzi individwali jippermetti li timijiet ta’ żvilupp żgħar u awtonomi jikkontrollaw iċ-ċiklu tal-ħajja kollu ta’ dawn is-servizzi, u jagħtuhom il-kapaċità li jibnu, jittestjaw u jużaw dawk is-servizzi b’mod indipendenti. Madankollu, l-iżvantaġġ ta 'din id-distribuzzjoni huwa t-telf ta' informazzjoni dwar kif kull servizz jinteraġixxi ma 'oħrajn. F'tali kundizzjonijiet, traċċar distribwit jiddikjara li huwa għodda indispensabbli għal debugging interazzjonijiet kumplessi bejn is-servizzi.

Jekk int verament sistema mqassma kumplessa b'mod xokkanti, allura ħadd ma jkun kapaċi jżommha f’rasha sħiħa stampa. Fil-fatt, l-iżvilupp ta 'għodda bbażata fuq is-suppożizzjoni li huwa saħansitra possibbli hija xi ħaġa ta' anti-mudell (approċċ ineffettiv u mhux produttiv). Idealment, id-debugging jeħtieġ għodda li tgħin iddejjaq iż-żona tat-tfittxija tiegħek, sabiex l-inġiniera jkunu jistgħu jiffokaw fuq subsett ta’ dimensjonijiet (servizzi/utenti/hosts, eċċ.) rilevanti għax-xenarju tal-problema li qed jiġi kkunsidrat. Meta tiġi ddeterminata l-kawża ta 'falliment, l-inġiniera mhumiex meħtieġa jifhmu x'ġara matul il- is-servizzi kollha f'daqqa, peress li tali rekwiżit jikkontradixxi l-idea stess ta 'arkitettura ta' mikroservizz.

Madankollu, traceview huwa jiġifieri Dan. Iva, xi sistemi ta 'traċċar joffru traċċi ikkompressati meta n-numru ta' spans fit-traċċa huwa tant kbir li ma jistgħux jintwerew f'viżwalizzazzjoni waħda. Madankollu, minħabba l-ammont kbir ta 'informazzjoni li tinsab anki f'tali viżwalizzazzjoni imqaxxar, l-inġiniera għadhom sfurzat "għarbel" dan, jonqos manwalment l-għażla għal sett ta 'servizzi li huma sorsi ta' problemi. Sfortunatament, f'dan il-qasam, il-magni huma ħafna aktar mgħaġġla mill-bnedmin, inqas suxxettibbli għal żbalji, u r-riżultati tagħhom huma aktar ripetibbli.

Raġuni oħra naħseb li traceview hija żbaljata hija għaliex mhix tajba għal debugging mmexxi mill-ipoteżi. Fil-qalba tagħha, id-debugging huwa iterattiv proċess li jibda b’ipoteżi, segwit minn verifika ta’ diversi osservazzjonijiet u fatti miksuba mis-sistema tul vettori differenti, konklużjonijiet/ġeneralizzazzjonijiet u valutazzjoni ulterjuri tal-verità tal-ipoteżi.

Opportunità veloċi u irħas l-ittestjar tal-ipoteżi u t-titjib tal-mudell mentali kif xieraq huwa pedament debugging Kwalunkwe għodda ta 'debugging għandha tkun interattiv u dejjaq l-ispazju tat-tfittxija jew, fil-każ ta 'ċomb falz, ħalli l-utent imur lura u jiffoka fuq żona differenti tas-sistema. L-għodda perfetta se tagħmel dan b'mod proattiv, immedjatament tiġbed l-attenzjoni tal-utent għal oqsma problematiċi potenzjali.

Alas, traceview ma tistax tissejjaħ għodda b'interface interattiva. L-aħjar li tista' tittama għalih meta tużah huwa li ssib xi sors ta 'latency akbar u tħares lejn it-tikketti u z-zkuk kollha possibbli assoċjati magħha. Dan ma jgħinx lill-inġinier biex jidentifika mudelli fit-traffiku, bħall-ispeċifiċitajiet tad-distribuzzjoni tad-dewmien, jew jiskopru korrelazzjonijiet bejn kejl differenti. Analiżi ġeneralizzata tat-traċċi jista’ jgħin biex jaqleb xi wħud minn dawn il-problemi. Tassew, hemm eżempji analiżi b’suċċess bl-użu ta’ tagħlim tal-magni biex tidentifika medda anomali u tidentifika subsett ta’ tikketti li jistgħu jkunu assoċjati ma’ imġieba anomala. Madankollu, għadni ma narax viżwalizzazzjonijiet konvinċenti tat-tagħlim tal-magni jew is-sejbiet tal-minjieri tad-dejta applikati għal spans li huma differenti b'mod sinifikanti minn traceview jew DAG (graff aċikliku dirett).

Spans huma livell baxx wisq

Il-problema fundamentali ma 'traceview hija dik tifrex huma primittivi ta' livell baxx wisq kemm għall-analiżi tal-latency kif ukoll għall-analiżi tal-kawża ewlenija. Huwa bħall-parsing ta 'kmandi individwali tal-proċessur biex tipprova ssolvi eċċezzjoni, billi tkun taf li hemm għodod ta' livell ħafna ogħla bħal backtrace li huma ħafna aktar konvenjenti biex taħdem magħhom.

Barra minn hekk, se nieħu l-libertà li nsostni dan li ġej: idealment, m'għandniex bżonn stampa sħiħa seħħet matul iċ-ċiklu tal-ħajja tat-talba, li huwa rappreżentat minn għodod moderni ta’ traċċar. Minflok, hija meħtieġa xi forma ta 'estrazzjoni ta' livell ogħla li fiha informazzjoni dwar xiex mar ħażin (simili għal backtrace), flimkien ma 'xi kuntest. Minflok nara t-traċċa kollha, nippreferi naraha часть, fejn jiġri xi ħaġa interessanti jew mhux tas-soltu. Bħalissa, it-tfittxija titwettaq manwalment: l-inġinier jirċievi t-traċċa u janalizza b'mod indipendenti l-firxiet fit-tfittxija ta 'xi ħaġa interessanti. L-approċċ tan-nies li jħarsu lejn il-firxiet fi traċċi individwali bit-tama li jiskopru attività suspettuża ma jiskala xejn (speċjalment meta jridu jagħmlu sens tal-metadejta kollha kodifikata f'firxiet differenti, bħal span ID, isem tal-metodu RPC, medda ta' żmien). 'a, zkuk, tikketti, eċċ.).

Alternattivi għal traceview

Ir-riżultati tat-traċċa huma l-aktar utli meta jistgħu jiġu viżwalizzati b'mod li jipprovdi ħarsa mhux trivjali dwar dak li qed jiġri f'partijiet interkonnessi tas-sistema. Sakemm jiġri dan, il-proċess ta 'debugging fil-biċċa l-kbira jibqa' inerti u jiddependi fuq il-ħila tal-utent li jinnota l-korrelazzjonijiet it-tajba, jiċċekkja l-partijiet it-tajba tas-sistema, jew ipoġġi l-biċċiet tal-puzzle flimkien - għall-kuntrarju għodda, tgħin lill-utent jifformula dawn l-ipoteżijiet.

M'iniex disinjatur viżwali jew speċjalista UX, iżda fit-taqsima li jmiss irrid naqsam ftit ideat dwar kif jistgħu jidhru dawn il-viżwalizzazzjonijiet.

Iffoka fuq servizzi speċifiċi

Fi żmien meta l-industrija qed tikkonsolida madwar ideat SLO (għanijiet tal-livell tas-servizz) u SLI (indikaturi tal-livell tas-servizz), jidher raġonevoli li timijiet individwali għandhom jagħtu prijorità li jiżguraw li s-servizzi tagħhom ikunu allinjati ma 'dawn l-għanijiet. Minn dan isegwi li orjentat lejn is-servizz il-viżwalizzazzjoni hija l-aktar adattata għal timijiet bħal dawn.

It-traċċi, speċjalment mingħajr teħid ta' kampjuni, huma teżor ta' informazzjoni dwar kull komponent ta' sistema mqassma. Din l-informazzjoni tista 'tingħata lil proċessur cunning li se jipprovdi lill-utenti orjentat lejn is-servizz sejbiet Jistgħu jiġu identifikati minn qabel - anki qabel l-utent iħares lejn it-traċċi:

  1. Dijagrammi tad-distribuzzjoni tal-latency biss għal talbiet prominenti ħafna (talbiet barrani);
  2. Dijagrammi tad-distribuzzjoni tad-dewmien għal każijiet meta l-għanijiet tas-servizz SLO ma jintlaħqux;
  3. L-aktar "komuni", "interessanti" u "stramb" tags fil-mistoqsijiet li ħafna drabi huma ripetuti;
  4. Tqassim tal-latency għal każijiet fejn dipendenzi is-servizzi ma jilħqux l-għanijiet SLO tagħhom;
  5. Tqassim tal-latency għal diversi servizzi downstream.

Xi wħud minn dawn il-mistoqsijiet sempliċement ma jitwieġbux b'metriċi integrati, u jġiegħel lill-utenti jiskrutinizzaw il-firxiet. Bħala riżultat, għandna mekkaniżmu estremament ostili għall-utent.

Dan iqajjem il-mistoqsija: xi ngħidu dwar interazzjonijiet kumplessi bejn servizzi diversi kkontrollati minn timijiet differenti? Hux traceview mhix meqjusa bħala l-aktar għodda xierqa biex tenfasizza sitwazzjoni bħal din?

L-iżviluppaturi tal-mowbajl, is-sidien ta’ servizzi mingħajr stat, is-sidien ta’ servizzi mmexxija b’stat (bħal databases) u s-sidien tal-pjattaformi jistgħu jkunu interessati f’xi ħaġa oħra preżentazzjoni sistema mqassma; traceview hija soluzzjoni ġenerika wisq għal dawn il-ħtiġijiet fundamentalment differenti. Anke f'arkitettura ta 'mikroservizz kumplessa ħafna, is-sidien tas-servizzi m'għandhomx bżonn għarfien profond ta' aktar minn żewġ jew tliet servizzi upstream u downstream. Essenzjalment, fil-biċċa l-kbira tax-xenarji, l-utenti jeħtieġu biss iwieġbu mistoqsijiet dwar sett limitat ta' servizzi.

Huwa simili li tħares lejn subsett żgħir ta 'servizzi permezz ta' lenti għall-fini ta 'skrutinju tiegħu. Dan se jippermetti lill-utent jistaqsi mistoqsijiet aktar urġenti dwar l-interazzjonijiet kumplessi bejn dawn is-servizzi u d-dipendenzi immedjati tagħhom. Dan huwa simili għal backtrace fid-dinja tas-servizzi, fejn l-inġinier jaf li ħażin, u għandu wkoll xi fehim ta 'dak li qed jiġri fis-servizzi tal-madwar x'jifhem għaliex.

L-approċċ li qed nippromwovi huwa l-oppost eżatt tal-approċċ ibbażat fuq traċċa minn fuq għal isfel, fejn l-analiżi tibda bit-traċċa kollha u mbagħad taħdem gradwalment sa medda individwali. B'kuntrast, approċċ minn isfel għal fuq jibda billi janalizza żona żgħira qrib il-kawża potenzjali tal-inċident, u mbagħad jespandi l-ispazju ta 'tfittxija kif meħtieġ (bil-potenzjal li jġibu timijiet oħra biex janalizzaw firxa usa' ta 'servizzi). It-tieni approċċ huwa aktar adattat biex jiġu ttestjati malajr l-ipoteżijiet inizjali. Ladarba jinkisbu riżultati konkreti, ikun possibbli li wieħed jgħaddi għal analiżi aktar immirata u dettaljata.

Bini ta' topoloġija

Fehmiet speċifiċi għas-servizz jistgħu jkunu utli ħafna jekk l-utent ikun jaf dak servizz jew grupp ta’ servizzi huwa responsabbli biex iżid il-latenza jew jikkawża żbalji. Madankollu, f'sistema kumplessa, l-identifikazzjoni tas-servizz offendenti jista 'jkun kompitu mhux trivjali waqt falliment, speċjalment jekk l-ebda messaġġi ta' żball ma ġew irrappurtati mis-servizzi.

Il-bini ta 'topoloġija ta' servizz jista 'jkun ta' għajnuna kbira biex wieħed jifhem liema servizz qed jesperjenza żieda fir-rati ta 'żbalji jew żieda fil-latency li qed tikkawża li s-servizz jiddegrada b'mod notevoli. Meta nitkellem dwar il-bini ta 'topoloġija, ma rridx infisser mappa tas-servizzi, li juri kull servizz disponibbli fis-sistema u magħruf għal tiegħu mapep ta’ arkitettura f’forma ta’ stilla tal-mewt. Din il-fehma mhix aħjar minn traceview ibbażata fuq graff aċikliku dirett. Minflok nixtieq nara topoloġija tas-servizz ġenerata dinamikament, ibbażata fuq ċerti attributi bħal rata ta 'żball, ħin ta' rispons, jew kwalunkwe parametru definit mill-utent li jgħin biex tiċċara s-sitwazzjoni b'servizzi suspettużi speċifiċi.

Ejja nieħdu eżempju. Ejja nimmaġinaw sit ipotetiku tal-aħbarijiet. Servizz ta' home page (paġna ta' quddiem) tiskambja data ma' Redis, b'servizz ta' rakkomandazzjoni, ma' servizz ta' reklamar u servizz ta' vidjo. Is-servizz tal-vidjo jieħu vidjows minn S3 u metadata minn DynamoDB. Is-servizz ta 'rakkomandazzjoni jirċievi metadejta minn DynamoDB, jgħabbi dejta minn Redis u MySQL, u jikteb messaġġi lil Kafka. Is-servizz tar-reklamar jirċievi data mill-MySQL u jikteb messaġġi lil Kafka.

Hawn taħt hemm rappreżentazzjoni skematika ta 'din it-topoloġija (ħafna programmi ta' routing kummerċjali jibnu t-topoloġija). Jista' jkun utli jekk ikollok bżonn tifhem id-dipendenzi tas-servizz. Madankollu, matul debugging, meta ċertu servizz (jiġifieri, servizz tal-vidjo) juri ħin ta 'rispons akbar, topoloġija bħal din mhix utli ħafna.

Traċċar imqassam: għamilna kollox ħażin
Dijagramma tas-servizz ta' sit ta' aħbarijiet ipotetiku

Id-dijagramma hawn taħt tkun aktar adattata. Hemm problema bis-servizz (vidjo) muri dritt fiċ-ċentru. L-utent jinduna immedjatament. Minn din il-viżwalizzazzjoni, jidher ċar li s-servizz tal-vidjo qed jaħdem b'mod anormali minħabba żieda fil-ħin ta 'rispons S3, li jaffettwa l-veloċità tat-tagħbija ta' parti mill-paġna ewlenija.

Traċċar imqassam: għamilna kollox ħażin
Topoloġija dinamika li turi biss servizzi "interessanti".

Topoloġiji ġenerati b'mod dinamiku jistgħu jkunu aktar effiċjenti minn mapep ta' servizz statiku, speċjalment f'infrastrutturi elastiċi u ta' skala awtomatika. Il-ħila li tqabbel u tikkuntrasta topoloġiji tas-servizz tippermetti lill-utent jistaqsi mistoqsijiet aktar rilevanti. Mistoqsijiet aktar preċiżi dwar is-sistema huma aktar probabbli li jwasslu għal fehim aħjar ta 'kif taħdem is-sistema.

Wirja komparattiva

Viżwalizzazzjoni utli oħra tkun wirja komparattiva. Bħalissa traċċi mhumiex adattati ħafna għal paraguni maġenb xulxin, għalhekk il-paraguni huma normalment tifrex. U l-idea ewlenija ta 'dan l-artikolu hija preċiżament li l-firxiet huma ta' livell baxx wisq biex tiġi estratta l-aktar informazzjoni siewja mir-riżultati tat-traċċa.

It-tqabbil ta 'żewġ traċċi ma jeħtieġx viżwalizzazzjonijiet fundamentalment ġodda. Fil-fatt, xi ħaġa bħal istogramma li tirrappreżenta l-istess informazzjoni bħal traceview hija biżżejjed. B'mod sorprendenti, anke dan il-metodu sempliċi jista 'jġib ħafna aktar frott milli sempliċement jistudja żewġ traċċi separatament. Saħansitra aktar qawwija tkun il-possibbiltà Ħares paragun ta' traċċi B'kollox. Ikun estremament utli li wieħed jara kif bidla fil-konfigurazzjoni tad-database skjerata reċentement biex tippermetti GC (ġbir taż-żibel) taffettwa l-ħin tar-rispons ta 'servizz downstream fuq skala ta' diversi sigħat. Jekk dak li qed niddeskrivi hawn ħsejjes bħal analiżi A/B tal-impatt tal-bidliet fl-infrastruttura f'ħafna servizzi billi tuża r-riżultati tat-traċċa, allura m'intix wisq 'il bogħod mill-verità.

Konklużjoni

Ma niddubitax l-utilità tat-traċċar innifsu. Nemmen sinċerament li m'hemm l-ebda metodu ieħor għall-ġbir tad-dejta rikka, kawżali u kuntestwali bħal dik li tinsab fi traċċa. Madankollu, nemmen ukoll li s-soluzzjonijiet kollha tat-traċċar jużaw din id-dejta b'mod estremament ineffiċjenti. Sakemm l-għodod tat-traċċar jibqgħu mwaħħla fuq ir-rappreżentazzjoni tat-traceview, se jkunu limitati fil-kapaċità tagħhom li jagħmlu l-aħjar mill-informazzjoni siewja li tista 'tiġi estratta mid-dejta li tinsab fit-traċċi. Barra minn hekk, hemm ir-riskju li tiżviluppa aktar interface viżwali kompletament mhux faċli u mhux intuwittiv li jillimita serjament il-kapaċità tal-utent biex issolvi l-problemi fl-applikazzjoni.

Id-debugging tas-sistemi kumplessi, anke bl-aħħar għodod, huwa oerhört diffiċli. L-għodod għandhom jgħinu lill-iżviluppatur jifformula u jittestja ipoteżi, jipprovdu b'mod attiv informazzjoni rilevanti, jidentifika l-outliers u jinnota karatteristiċi fid-distribuzzjoni tad-dewmien. Biex it-traċċar isir l-għodda tal-għażla għall-iżviluppaturi meta jissolvew problemi fil-produzzjoni jew isolvu problemi li jkopru servizzi multipli, huma meħtieġa interfaces tal-utent oriġinali u viżwalizzazzjonijiet li huma aktar konsistenti mal-mudell mentali tal-iżviluppaturi li joħolqu u joperaw dawk is-servizzi.

Se jieħu sforz mentali sinifikanti biex tiddisinja sistema li tirrappreżenta s-sinjali varji disponibbli fir-riżultati tat-traċċa b'mod li jkun ottimizzat għall-faċilità ta 'analiżi u inferenza. Ikollok bżonn taħseb dwar kif tiġbed it-topoloġija tas-sistema waqt id-debugging b'mod li jgħin lill-utent jegħleb l-blind spots mingħajr ma jħares lejn traċċi jew spans individwali.

Neħtieġu kapaċitajiet tajbin ta 'estrazzjoni u saffi (speċjalment fl-UI). Dawk li jidħlu tajjeb fi proċess ta' debugging immexxi minn ipoteżi fejn tista' b'mod iterattiv tistaqsi mistoqsijiet u tittestja l-ipoteżi. Huma mhux se jsolvu awtomatikament il-problemi kollha ta 'osservabbiltà, iżda se jgħinu lill-utenti jsaħħu l-intuwizzjoni tagħhom u jifformulaw mistoqsijiet aktar intelliġenti. Nappella għal approċċ aktar maħsub u innovattiv għall-viżwalizzazzjoni. Hemm prospett reali hawn biex jespandu l-orizzonti.

PS minn traduttur

Aqra wkoll fuq il-blog tagħna:

Sors: www.habr.com

Żid kumment