Tracing zaraina: tsy nety ny nataonay

Fanamarihana. transl.: Ny mpanoratra an'ity fitaovana ity dia i Cindy Sridharan, injeniera ao amin'ny imgix izay manampahaizana manokana amin'ny fampivoarana ny API ary indrindra ny fitiliana microservice. Amin'ity fitaovana ity dia mizara ny fomba fijeriny amin'ny antsipiriany momba ny olana misy amin'izao fotoana izao eo amin'ny sehatry ny tracing mizara izy, izay, araka ny heviny, dia misy ny tsy fahampian'ny fitaovana tena mahomby amin'ny famahana olana maika.

Tracing zaraina: tsy nety ny nataonay
[Sary nalaina tao amin'ny fitaovana hafa momba ny tracing mizara.]

Heverina fa tracing mizara sarotra ny fampiharana, ary ny fiverenana amin'izany mampiahiahy indrindra. Betsaka ny antony mahasarotra ny fanaraha-maso, matetika mitanisa ny asa tafiditra amin'ny fanamboarana ny singa tsirairay amin'ny rafitra mba handefasana lohapejy mifanentana amin'ny fangatahana tsirairay. Na dia misy aza io olana io, dia tsy azo resena mihitsy izany. Raha ny tokony ho izy, tsy manazava ny antony tsy tian'ny developer ny tracing (na dia efa mandeha aza izany).

Ny fanamby lehibe amin'ny tracing zaraina dia ny tsy fanangonana angon-drakitra, ny fanaovana manara-penitra ny endrika fizarana sy fanolorana vokatra, na ny famaritana hoe rahoviana, aiza ary ahoana no hanaovana santionany. Tsy mitady sary an-tsaina aho tsy misy dikany ireo "olana amin'ny fahatakarana" ireo, raha ny marina, dia ara-teknika tena manan-danja ary (raha mandinika ny Open Source marina isika) fenitra sy protocole) fanamby ara-politika tsy maintsy resena mba hijerena ireo olana ireo.

Na izany aza, raha eritreretintsika fa voavaha ireo olana rehetra ireo, dia lehibe ny mety tsy hisy fiovana lehibe amin'ny lafiny traikefa mpampiasa farany. Mety mbola tsy ho azo ampiasaina amin'ny toe-javatra debugging mahazatra indrindra ny tracingβ€”na dia aorian'ny fametrahana azy aza.

Taratasy hafa toy izany

Ny tracing voazara dia ahitana singa maromaro tsy mitovy:

  • fampitaovana ny fampiharana sy ny middleware miaraka amin'ny fitaovana fanaraha-maso;
  • fizarana contexte transfert;
  • fanangonana ny dian;
  • fitehirizana trace;
  • ny fitrandrahana sy ny fijerena azy ireo.

Ny resaka be dia be momba ny tracing zaraina dia mihevitra azy io ho karazana fandidiana tsy misy dikany izay ny tanjona tokana dia ny hanampy amin'ny fitiliana tanteraka ny rafitra. Izany dia noho ny fomba niforonan'ny hevitra momba ny tracing zaraina ara-tantara. IN lahatsoratra bilaogy, natao rehefa nosokafana ny loharanon'ny Zipkin dia voalaza fa izany [Zipkin] dia manafaingana kokoa ny Twitter. Ny tolotra ara-barotra voalohany ho an'ny tracing dia nampiroborobo ihany koa ho APM fitaovana.

Fanamarihana. transl.: Mba hahamora kokoa ny fahazoana ny lahatsoratra dia andeha isika hamaritra teny fototra roa araka ny antontan-taratasy momba ny tetikasa OpenTracing:

  • androm - ny singa fototra amin'ny tracing mizara. Famaritana momba ny rindranasa iray (ohatra, fangatahana angon-drakitra) miaraka amin'ny anarana, fotoana fanombohana sy fiafarana, marika, logs ary contexte.
  • MazΓ na dia misy rohy mankany amin'ny velarana hafa ny velarana, izay ahafahana mitambatra ao anatin'ny velarana maro soritry - fanehoana an-tsary ny fiainan'ny fangatahana rehefa mandeha amin'ny rafitra zaraina.

Ny traces dia misy angon-drakitra tena sarobidy izay afaka manampy amin'ny asa toy ny fitiliana famokarana, fitsapana fanarenana ny loza, fitsapana tsindrona diso, sns. Raha ny marina, ny orinasa sasany dia efa mampiasa tracing ho an'ny tanjona mitovy. Andeha isika hanomboka amin'ny famindrana contexte universal dia manana fampiasana hafa ankoatry ny fifindran'ny elanelana fotsiny amin'ny rafitra fitahirizana:

  • Ohatra, Uber fampiasana fanaraha-maso ny vokatra mba hanavahana ny fifamoivoizana fitsapana sy ny fifamoivoizana famokarana.
  • Facebook fampiasana angon-drakitra ho an'ny famakafakana lalana mitsikera sy ho an'ny fifindran'ny fifamoivoizana mandritra ny fitsapana sitrana amin'ny loza.
  • Ary koa ny tambajotra sosialy mihatra kahie Jupyter ahafahan'ny mpamorona mametraka fanontaniana tsy misy dikany momba ny valin'ny trace.
  • MPANARA-DIA AZY LDFI (Tsindrona tsy fahombiazan'ny taranaka) fampiasana trace nozaraina ho an'ny fitiliana amin'ny tsindrona diso.

Tsy misy amin'ireo safidy voatanisa etsy ambony mihatra tanteraka amin'ilay toe-javatra debugging, izay ezahin'ny injeniera hamaha ny olana amin'ny fijerena ny dian.

Rehefa tonga izany nefa tonga amin'ny script debugging, ny interface voalohany dia mijanona ho kisary traceview (na dia misy miantso azy koa aza "Gant chart" na "sary riandrano"). Under traceview я Ny tiako hambara ny velarana rehetra sy ny metadata miaraka izay mandrafitra ny dian. Ny rafitra tracing open source rehetra, ary koa ny vahaolana tracing ara-barotra rehetra, dia manolotra a traceview mpampiasa interface tsara ho an'ny sary, antsipirihany ary sivana dian.

Ny olana amin'ny rafitra tracing rehetra hitako hatreto dia ny vokatr'izany fijerena maso (traceview) saika maneho tanteraka ny endri-javatra ny dingan`ny taranaka trace. Na dia aroso aza ny fijerena sary hafa: heatmaps, topologies service, histograms latency, dia mbola midina any amin'ny farany izy ireo. traceview.

Tamin'ny lasa I nitaraina fa ny ankamaroan'ny UI/UX tracing "fanavaozana" toa voafetra ihany mihodina metadata fanampiny amin'ny trace, fampiasam-bola amin'izy ireo vaovao miaraka amin'ny kardinaly avo (avo kardinaly) na manome fahafahana hamantatra amin'ny velarana manokana na mamaly fanontaniana inter- sy intra-trace... izay traceview mijanona ho fitaovana fampitaovana voalohany. Raha mbola mitohy io raharaham-pirenena io, ny tracing zaraina dia (farafaharatsiny) dia haka ny laharana faha-4 ho fitaovana fanenjehana, aorian'ny metric, logs ary stack traces, ary ny ratsy indrindra dia ho fandaniam-bola sy fotoana.

Olana amin'ny traceview

anjara traceview - manome sary feno momba ny fihetsehan'ny fangatahana tokana manerana ny singa rehetra amin'ny rafitra zaraina izay mifandray aminy. Ny rafitra fanaraha-maso mandroso kokoa dia mamela anao hamantatra ny elanelana tsirairay ary hijery ny fahatapahana rehefa mandeha ny fotoana ao anatin'ny dingana iray (rehefa manana sisintany miasa ny span).

Ny fototry ny maritrano microservices dia ny hevitra fa mitombo ny rafi-pandaminana miaraka amin'ny filan'ny orinasa. Ireo mpanohana ny microservices dia miady hevitra fa ny fizarana asa ara-barotra isan-karazany amin'ny serivisy tsirairay dia ahafahan'ny ekipa fampandrosoana kely tsy miankina hifehy ny tsingerin'ny fiainana manontolo amin'ny serivisy toy izany, manome azy ireo fahafahana manangana, manandrana ary mametraka ireo serivisy ireo. Na izany aza, ny tsy fahampian'ity fizarana ity dia ny fahaverezan'ny fampahalalana momba ny fifandraisan'ny serivisy tsirairay amin'ny hafa. Amin'ny toe-javatra toy izany, ny fizarana tracing filazana ho fitaovana tena ilaina debugging fifandraisana sarotra eo amin'ny serivisy.

Raha tena ianao rafitra fizarana sarotra be, dia tsy misy na dia iray aza mahatana izany ao an-dohany feno sary. Raha ny marina, ny famolavolana fitaovana mifototra amin'ny fiheverana fa azo atao mihitsy aza dia zavatra iray manohitra ny fomba fiasa (fomba tsy mahomby sy tsy mamokatra). Ny tsara indrindra, ny debugging dia mitaky fitaovana manampy tery ny faritra fikarohanao, mba hahafahan'ny injeniera hifantoka amin'ny ampahany amin'ny refy (serivisy/mpampiasa/host, sns.) mifandraika amin'ny scenario olana dinihina. Rehefa mamaritra ny anton'ny tsy fahombiazana, ny injeniera dia tsy voatery hahatakatra ny zava-nitranga nandritra ny tolotra rehetra indray mandeha, satria ny fepetra toy izany dia mifanohitra amin'ny hevitra momba ny maritrano microservice.

Na izany aza, ny traceview dia izany hoe Ity. Eny, ny rafitra fanaraha-maso sasany dia manolotra traceview voaporitra rehefa be dia be ny elanelana ao amin'ny trace ka tsy azo aseho amin'ny sary iray. Na izany aza, noho ny habetsahan'ny vaovao voarakitra na dia ao amin'ny sary nesorina-down toy izany, ny injeniera mbola noterena "manasivana" azy, mametra ny fifantenana amin'ny andiana serivisy izay loharanon'ny olana. Indrisy anefa, amin'ity sehatra ity, ny milina dia haingana lavitra noho ny olombelona, ​​tsy dia mora lesoka, ary ny valiny dia azo averina.

Ny antony iray hafa heveriko fa diso ny traceview dia satria tsy mety amin'ny debugging ateraky ny hypothesis. Amin'ny ankapobeny, ny debugging dia miverimberina dingana iray manomboka amin'ny petra-kevitra, arahin'ny fanamarinana ny fandinihana sy ny zava-misy isan-karazany azo avy amin'ny rafitra miaraka amin'ny vectors samihafa, fehin-kevitra/famintinana ary fanombanana bebe kokoa ny fahamarinan'ny petra-kevitra.

fahafahana haingana sy mora fitsapana petra-kevitra sy ny fanatsarana ny ara-tsaina modely araka izany dia vato fehizoro debugging Ny fitaovana debugging rehetra dia tokony ho fifandraisana ary tery ny habaka fikarohana na, raha misy fitarihana diso, avelao ny mpampiasa hiverina ary hifantoka amin'ny faritra hafa amin'ny rafitra. Ny fitaovana tonga lafatra dia hanao izany haingana, misarika avy hatrany ny sain'ny mpampiasa amin'ireo faritra mety hisy olana.

indrisy, traceview tsy azo antsoina hoe fitaovana miaraka amin'ny interface interactive. Ny tsara indrindra azonao antenaina amin'ny fampiasana azy dia ny fitadiavana loharanon'ny fahatarana mihamitombo ary mijery ireo marika sy logs rehetra mety ho mifandray aminy. Tsy manampy ny injeniera hamantatra izany lamina amin'ny fifamoivoizana, toy ny mari-pamantarana momba ny fitsinjarana fahatarana, na hamantatra ny fifandraisan'ny fandrefesana samihafa. Famakafakana trace generalisado mety hanampy amin'ny famahana ny sasany amin'ireo olana ireo. tena, misy ohatra famakafakana mahomby amin'ny alΓ lan'ny fianarana milina hamantarana ny elanelana tsy misy dikany sy hamantarana ny ampahany amin'ny marika izay mety mifandray amin'ny fihetsika tsy mety. Na izany aza, mbola tsy nahita sary mahatsikaiky momba ny fianarana milina aho na ny fikarohana momba ny fitrandrahana angon-drakitra ampiharina amin'ny habaka izay tsy mitovy amin'ny traceview na DAG (sary acyclic directed).

Ambany loatra ny elanelana

Ny olana fototra amin'ny traceview dia izany sakan'ny primitives ambany loatra ho an'ny famakafakana ny fahatarana sy ny famakafakana ny fotony. Sahala amin'ny famakafakana ny baikon'ny processeur tsirairay izy io mba hanandramana hamaha ny maningana, amin'ny fahafantarana fa misy fitaovana avo lenta kokoa toa ny backtrace izay mora kokoa ny miasa.

Ambonin'izany, horaisiko ny fahalalahana hanamafy ireto manaraka ireto: raha ny tokony ho izy, dia tsy ilaina izany sary feno nitranga nandritra ny vanim-potoanan'ny fangatahana, izay asehon'ny fitaovana fanaraha-maso maoderina. Ilaina kosa ny endrika abstraction avo lenta izay misy fampahalalana momba ny inona tsy nety (mitovy amin'ny backtrace), miaraka amin'ny contexte sasany. Raha tokony hijery ny dian-tongotra manontolo aho dia aleoko mijery azy ampahany, izay misy zavatra mahaliana na tsy mahazatra mitranga. Amin'izao fotoana izao, ny fikarohana dia atao amin'ny tanana: ny injeniera dia mandray ny dian ary manadihady tsy miankina ny elanelam-potoana mba hitady zavatra mahaliana. Ny fanatonan'ny olona mibanjina ny velarana amin'ny dian'ny tsirairay amin'ny fanantenana hahita hetsika mampiahiahy dia tsy mirefy mihitsy (indrindra rehefa tsy maintsy mahazo ny hevitr'ireo metadata rehetra voakodia amin'ny elanelana samihafa, toy ny ID span, anarana fomba RPC, faharetan'ny elanelam-potoana. 'a, logs, tag, sns.).

Alternatives amin'ny traceview

Ny valin'ny trace dia tena ilaina indrindra rehefa azo jerena amin'ny fomba manome fahitana tsy misy dikany amin'ny zava-mitranga amin'ny faritra mifandray amin'ny rafitra. Mandra-pahatongan'izany, dia mijanona ny dingana debugging inert ary miankina amin'ny fahaizan'ny mpampiasa mahatsikaritra ny fifamatorana tsara, manamarina ny ampahany tsara amin'ny rafitra, na manambatra ny ampahany amin'ny piozila - mifanohitra amin'ny fitaovana, manampy ny mpampiasa hamolavola ireo vinavina ireo.

Tsy mpamorona sary na manam-pahaizana manokana momba ny UX aho, fa amin'ny fizarana manaraka dia te hizara hevitra vitsivitsy momba ny mety ho endrik'ireo sary ireo aho.

Mifantoha amin'ny serivisy manokana

Amin'ny fotoana izay mampivondrona ny indostria manodidina ny hevitra SLO (tanjona amin'ny ambaratonga serivisy) sy SLI (famantarana ny haavon'ny serivisy), toa mitombina ny tokony ho laharam-pahamehana ny ekipa tsirairay mba hahazoana antoka fa mifanaraka amin'ireo tanjona ireo ny tolotr'izy ireo. Manaraka izany miompana amin'ny serivisy ny sary dia mety indrindra ho an'ny ekipa toy izany.

Ny dian, indrindra fa tsy misy santionany, dia harenan'ny fampahalalana momba ny singa tsirairay amin'ny rafitra zaraina. Ity fampahalalana ity dia azo omena amin'ny processeur fetsy izay hanome mpampiasa miompana amin'ny serivisy azo fantarina mialoha izy ireo - alohan'ny hijeren'ny mpampiasa ny dian'izy ireo:

  1. Kisary fizarana fahatarana ho an'ny fangatahana misongadina ihany (fangatahana ivelany);
  2. Sarin'ny fizarana fahatarana ho an'ny tranga tsy tratra ny tanjon'ny serivisy SLO;
  3. Ny marika "mahazatra", "mahaliana" ary "hafahafa" indrindra amin'ny fanontaniana matetika dia miverimberina;
  4. Ny fahatapahan'ny latency ho an'ny tranga izay miankina amin'ny tsy mahatratra ny tanjon'ny SLO ny serivisy;
  5. Ny fahatapahan-dΓ lana ho an'ny serivisy midina isan-karazany.

Ny sasany amin'ireo fanontaniana ireo dia tsy voavaly tsotra izao amin'ny alΓ lan'ny metrika natsangana, manery ny mpampiasa handinika ny habaka. Vokatr'izany dia manana mekanika tena mankahala ny mpampiasa izahay.

Mampametra-panontaniana izany hoe: ahoana ny amin'ny fifandraisana sarotra eo amin'ny serivisy samihafa fehezin'ny ekipa samihafa? Sa tsy izany traceview tsy heverina ho fitaovana mety indrindra hanasongadinana ny toe-javatra toy izany?

Mety ho liana amin'ny zavatra hafa ny mpamorona finday, tompon'ny tolotra tsy misy fanjakana, tompon'ny tolotra ara-panjakana (toy ny angon-drakitra) ary tompon'ny sehatra. Presentation rafitra fizarana; traceview vahaolana ankapobeny loatra ho an'ireo filana samihafa ifotony ireo. Na dia ao anatin'ny rafitra microservice be pitsiny aza, ny tompon'ny serivisy dia tsy mila fahalalana lalina momba ny serivisy ambony sy ambany mihoatra ny roa na telo. Amin'ny ankapobeny, amin'ny ankamaroan'ny toe-javatra, ny mpampiasa dia mila mamaly fanontaniana momba ny serivisy voafetra.

Toy ny mijery ampahany kely amin'ny serivisy amin'ny alΓ lan'ny fitaratra fanamafisam-peo mba handinihana azy io. Izany dia ahafahan'ny mpampiasa mametraka fanontaniana manindry kokoa momba ny fifandraisana sarotra misy eo amin'ireo serivisy ireo sy ny fiankinan-dry zareo eo noho eo. Izany dia mitovy amin'ny backtrace amin'ny tontolon'ny serivisy, izay fantatry ny injeniera fa diso, ary manana fahatakarana ihany koa ny zava-mitranga amin'ny serivisy manodidina mba ho takatra nahoana.

Ny fomba amporisihiko dia mifanohitra tanteraka amin'ny fomba fijery ambony ambany, mifototra amin'ny traceview, izay manomboka amin'ny trace manontolo ny famakafakana ary avy eo dia midina tsikelikely mankany amin'ny elanelana tsirairay. Mifanohitra amin'izany kosa, manomboka amin'ny famakafakana faritra kely akaikin'ny mety ho anton'ilay tranga ny fomba fiasa ambany ambony, ary avy eo manitatra ny habaka fikarohana araka izay ilaina (miaraka amin'ny mety hampidirana ekipa hafa hamakafaka tolotra midadasika kokoa). Ny fomba faharoa dia mety kokoa amin'ny fitsapana haingana ny vinavina voalohany. Rehefa azo ny vokatra mivaingana dia azo atao ny miroso amin'ny fanadihadiana mifantoka kokoa sy amin'ny antsipiriany.

Manangana topolojia

Ny fomba fijery manokana momba ny serivisy dia mety ho tena ilaina raha fantatry ny mpampiasa izay ny serivisy na vondron'asa dia tompon'andraikitra amin'ny fampitomboana ny fahatarana na miteraka fahadisoana. Na izany aza, amin'ny rafitra sarotra, ny famantarana ny serivisy manafintohina dia mety ho asa tsy misy dikany mandritra ny tsy fahombiazana, indrindra raha tsy misy hafatra diso notaterina avy amin'ny serivisy.

Ny fananganana topolojian'ny serivisy dia mety ho fanampiana lehibe amin'ny fahafantarana hoe iza amin'ireo serivisy no mahatsapa ny fiakaran'ny taham-pahadisoana na ny fitomboan'ny fahatarana izay mahatonga ny serivisy hiharatsy. Rehefa miresaka momba ny fananganana topologie aho dia tsy midika izany sarintany serivisy, mampiseho ny serivisy rehetra misy ao amin'ny rafitra ary fantatra amin'ny azy sarintanin'ny maritrano miendrika kintana fahafatesana. Ity fomba fijery ity dia tsy tsara noho ny traceview mifototra amin'ny grafika acyclic mivantana. Fa kosa tiako ny hahita topologie serivisy vita amin'ny dinamika, mifototra amin'ny toetra sasany toy ny tahan'ny hadisoana, ny fotoana famaliana, na izay mari-pamantarana voafaritry ny mpampiasa izay manampy amin'ny fanazavana ny zava-misy amin'ny tolotra manokana mampiahiahy.

Andeha isika haka ohatra. Alao sary an-tsaina ny tranokalam-baovao iray. Serivisy pejy fandraisana (pejy voalohany) mifanakalo angona amin'ny Redis, miaraka amin'ny serivisy fanolorana, miaraka amin'ny serivisy dokam-barotra ary serivisy video. Ny serivisy video dia maka horonan-tsary avy amin'ny S3 sy metadata avy amin'ny DynamoDB. Ny serivisy fanolorana dia mahazo metadata avy amin'ny DynamoDB, mameno ny angona avy amin'ny Redis sy MySQL, ary manoratra hafatra amin'ny Kafka. Ny serivisy dokam-barotra dia mahazo angona avy amin'ny MySQL ary manoratra hafatra amin'ny Kafka.

Ity ambany ity ny fanehoana schematic an'ity topolojia ity (fandaharana zotra ara-barotra maro no manamboatra ny topologie). Mety ilaina izany raha mila mahatakatra ny fiankinan'ny serivisy ianao. Na izany aza, nandritra ny debugging, rehefa misy serivisy iray (milaza hoe, serivisy video) dia mampiseho fotoana famaliana mitombo, dia tsy dia ilaina loatra ny topolojia toy izany.

Tracing zaraina: tsy nety ny nataonay
Diagram momba ny serivisy momba ny tranokalam-baovao iray

Ny kisary etsy ambany dia mety kokoa. Misy olana amin'ny serivisy (Video) aseho eo afovoany. Ny mpampiasa dia mahatsikaritra izany avy hatrany. Avy amin'ity sary ity dia hita mazava fa miasa tsy ara-dalΓ na ny serivisy horonan-tsary noho ny fitomboan'ny fotoana famaliana S3, izay misy fiantraikany amin'ny hafainganam-pandehan'ny ampahany amin'ny pejy fototra.

Tracing zaraina: tsy nety ny nataonay
Topologie dinamika mampiseho tolotra "mahaliana".

Ny topologie vita amin'ny dinamika dia mety hahomby kokoa noho ny sarintany serivisy static, indrindra amin'ny fotodrafitrasa elastika, auto-scaling. Ny fahafahana mampitaha sy mampifanohitra ny topologie serivisy dia ahafahan'ny mpampiasa mametraka fanontaniana mifandraika kokoa. Ny fanontaniana mazava kokoa momba ny rafitra dia mety hitarika amin'ny fahatakarana tsara kokoa ny fomba fiasan'ny rafitra.

Fampisehoana fampitahana

Fampisehoana fampitahana iray hafa mahasoa. Amin'izao fotoana izao, ny dian dia tsy mety amin'ny fampitahana mifanila, ka matetika ny fampitahana sakan'ny. Ary ny hevi-dehibe amin'ity lahatsoratra ity dia ny hoe ambany loatra ny elanelana mba haka ny fampahalalana sarobidy indrindra amin'ny valin'ny trace.

Ny fampitahana dian-tongotra roa dia tsy mitaky fijerena sary vaovao. Raha ny marina dia ampy ny zavatra toy ny histograma maneho ny fampahalalana mitovy amin'ny traceview. Mahagaga fa na dia ity fomba tsotra ity aza dia afaka mitondra voankazo betsaka kokoa noho ny fianarana dian roa misaraka fotsiny. Mbola mahery kokoa aza ny mety hitranga sary an-tsaina fampitahana ny dian Amin'ny fitambarany. Tena ilaina tokoa ny mahita ny fiovan'ny fandrindrana angona angona vao haingana mba ahafahan'ny GC (fanangonana fako) misy fiantraikany amin'ny fotoana famalian'ny serivisy midina mandritra ny ora maromaro. Raha toa ka toy ny fanadihadiana A/B momba ny fiantraikan'ny fiovan'ny fotodrafitrasa ny zavatra lazaiko eto amin'ny serivisy maro mampiasa ny vokatry ny trace, dia tsy lavitra ny fahamarinana ianao.

famaranana

Tsy mametra-panontaniana aho momba ny maha-zava-dehibe ny tracing. Mino an-kitsim-po aho fa tsy misy fomba hafa hanangonana angon-drakitra manankarena, antonony ary mifanaraka amin'ny zava-misy ao anaty trace. Na izany aza, mino koa aho fa ny vahaolana amin'ny fanaraha-maso rehetra dia mampiasa ity data ity amin'ny fomba tsy mahomby. Raha mbola mijanona ao amin'ny fanehoana traceview ny fitaovana fanaraha-maso, dia ho voafetra ny fahafahan'izy ireo manararaotra ny fampahalalana sarobidy azo alaina amin'ny angon-drakitra voarakitra ao amin'ny dian. Ho fanampin'izany, misy ny loza mety hitranga amin'ny fampivoarana bebe kokoa ny interface tsara tarehy tsy mahafinaritra sy tsy misy dikany izay hametra mafy ny fahafahan'ny mpampiasa mamaha olana amin'ny fampiharana.

Ny fametrahana rafitra sarotra, na dia miaraka amin'ny fitaovana farany aza, dia tena sarotra. Ny fitaovana dia tokony hanampy ny mpamorona hamolavola sy hitsapa vinavina, manome mavitrika fampahalalana mifandraika amin'izany, famantarana ireo tsy fantatra ary manamarika ireo endri-javatra amin'ny fizarana ny fahatarana. Mba hahatongavana ho fitaovana isafidianana ho an'ny mpamorona rehefa mamaha olana amin'ny tsy fahombiazan'ny famokarana na mamaha olana izay mandrakotra serivisy maro, dia ilaina ny interface tsara sy sary an-tsary izay mifanaraka kokoa amin'ny maodely ara-tsaina an'ireo mpamorona izay mamorona sy mampandeha ireo serivisy ireo.

Mitaky ezaka ara-tsaina lehibe ny famolavolana rafitra iray izay maneho ireo famantarana isan-karazany hita ao amin'ny valin'ny trace amin'ny fomba tsara indrindra ho fanamorana ny famakafakana sy ny fanatsoahan-kevitra. Mila mieritreritra ny fomba fandrafetana ny topologie rafitra ianao mandritra ny debugging amin'ny fomba izay manampy ny mpampiasa handresy ny jamba nefa tsy mijery ny dian'ny tsirairay.

Mila fahaiza-manao abstraction sy layering tsara isika (indrindra amin'ny UI). Ireo izay mety hifanaraka tsara amin'ny dingan'ny debugging mifototra amin'ny hypothesis izay ahafahanao mametraka fanontaniana sy fitsapana vinavina. Tsy hamaha ho azy ireo ny olana rehetra azo jerena, fa hanampy ny mpampiasa hanatsara ny fahatsapany sy hamolavola fanontaniana marani-tsaina kokoa. Miantso fomba fijery misaina sy manavao kokoa aho. Misy fanantenana tokoa eto mba hanitarana ny faravodilanitra.

PS avy amin'ny mpandika teny

Vakio ihany koa ao amin'ny bilaoginay:

Source: www.habr.com

Add a comment