Bashkimi i OpenTracing dhe OpenCensus: Rruga drejt konvergjencës

Bashkimi i OpenTracing dhe OpenCensus: Rruga drejt konvergjencës

Autorë: Ted Young, Pritam Shah dhe Komiteti i Specifikimeve Teknike (Carlos Alberto, Bogdan Drutu, Sergei Kanzhelev dhe Yuri Shkuro).

Projekti i përbashkët mori emrin: http://opentelemetry.io

Shumë, shumë shkurt:

  • Ne po krijojmë një grup të ri të unifikuar bibliotekash dhe specifikimesh për aftësitë e monitorimit të telemetrisë. Ai do të bashkojë projektet OpenTracing dhe OpenCensus dhe do të sigurojë një shteg të mbështetur për migrimin.
  • Zbatimi i referencës në Java do të jetë i disponueshëm më 24 prill dhe puna për implementimet në gjuhë të tjera do të fillojë plotësisht më 8 maj 2019. Shikoni orarin mund të jetë këtu.
  • Deri në shtator 2019, është planifikuar barazi me projektet ekzistuese për C#, Golang, Java, NodeJS dhe Python. Na pret shumë punë, por mund ta përballojmë nëse punojmë paralelisht. Nëse jeni të interesuar të merrni pjesë në këtë projekt, ju lutemi regjistrohuni dhe na tregoni se si dëshironi të kontribuoni.
  • Pasi zbatimi në secilën gjuhë të jetë pjekur, projektet përkatëse OpenTracing dhe OpenCensus do të mbyllen. Kjo do të thotë se projektet e vjetra do të ngrihen dhe projekti i ri do të vazhdojë të mbështesë mjetet ekzistuese për dy vjet duke përdorur përputhshmërinë e prapambetur.

Pasqyrë e projektit

Bashkimi i OpenTracing dhe OpenCensus: Rruga drejt konvergjencës

Ne po bëjmë një bashkim! Qëllimi përfundimtar është bashkimi i projekteve OpenTracing dhe OpenCensus në një projekt të përbashkët.
Thelbi i projektit të ri do të jetë një grup ndërfaqesh të pastra dhe të menduara, duke përfshirë asamblenë tradicionale të bibliotekave që zbatojnë këto ndërfaqe në formën e të ashtuquajturave. SDK. Qershia mbi tortë do të jenë standardet e rekomanduara për protokollet e të dhënave dhe telit, duke përfshirë pjesët e përbashkëta të infrastrukturës.
Rezultati do të jetë një sistem i plotë telemetrie i përshtatshëm për monitorimin e mikroshërbimeve dhe llojeve të tjera të sistemeve moderne të shpërndara, i pajtueshëm me shumicën e OSS-ve kryesore dhe softuerëve mbështetës komercialë.

Ngjarjet kryesore

24.04/XNUMX — Kandidati referues i dorëzuar për shqyrtim.
8.05 — Formohet një ekip dhe fillon të punojë në të gjitha gjuhët.
20.05 — Nisja zyrtare e projektit në Kubecon Barcelona.
6.09 - Zbatimet në C#, Golang, Java, NodeJS dhe Python arrijnë barazi me homologët e tyre.
6.11 - Përfundimi zyrtar i projekteve OpenTracing dhe OpenCensus.
20.11 — Festa e lamtumirës për nder të përfundimit të projekteve në Samitin e Vëzhgueshmërisë, Kubecon San Diego.

Afati kohor i konvergjencës

Bashkimi i OpenTracing dhe OpenCensus: Rruga drejt konvergjencës

Migrimi për secilën gjuhë përfshin një ndërtim të SDK-së të gatshme për prodhim, vegla për bibliotekat e njohura, dokumentacionin, CI, mjetet e përputhshmërisë së pasme dhe mbylljen e projekteve përkatëse OpenCensus dhe OpenTracing ("perëndimi i diellit"). Ne vendosëm një objektiv ambicioz për shtatorin 2019 - arritjen e barazisë për gjuhët C#, Golang, Java, NodeJS dhe Python. Do të zhvendosim datën e perëndimit të diellit derisa të gjitha gjuhët të jenë gati. Por është e preferueshme të shmanget kjo.
Kur shikoni qëllimet, ju lutemi merrni parasysh përfshirjen tuaj personale, na njoftoni duke plotësuar formular regjistrimi, ose duke thënë përshëndetje në bisedat e projekteve Gitter OpenTracing и Regjistrimi i hapur. Ju mund ta shikoni grafikun si një infografik këtu.

Objektivi: Drafti i parë i specifikimit ndër-gjuhësor (përfundimi deri më 8 maj)

Është e rëndësishme të punoni në mënyrë kohezive, edhe kur punoni paralelisht në gjuhë të ndryshme. Specifikimi ndër-gjuhësor ofron udhëzime për projektin. Tingëllon prozaike, por garanton mbështetje për një sistem koherent që ndihet i njohur pavarësisht nga gjuha e programimit.

Kërkesat e detyrueshme për specifikimin e parë të draftit për gjuhën X:

  • Përkufizime të terminologjisë së përgjithshme.
  • Një model për përshkrimin e transaksioneve të shpërndara, statistikave dhe matjeve.
  • Sqarime për çështje të rëndësishme që u ngritën gjatë zbatimit.

Ky synim po bllokon pjesën tjetër të punës, drafti i parë duhet të përfundojë deri më 8 maj.

Objektivi: Drafti i parë për specifikimin e të dhënave (përfundimi deri më 6 korrik)

Specifikimi i të dhënave përcakton një format të përbashkët të të dhënave për gjurmët dhe metrikat në mënyrë që të dhënat e eksportuara nga të gjitha proceset të mund të përpunohen nga e njëjta infrastrukturë telemetrike pavarësisht nga procesi i gjenerimit të të dhënave. Kjo përfshin skemën e të dhënave për modelin e gjurmës të përshkruar në specifikimin ndër-gjuhësor. Përfshihen gjithashtu përkufizime të meta të dhënave për operacionet e zakonshme që gjurma përdor për të kapur, të tilla si kërkesat HTTP, gabimet dhe pyetjet e bazës së të dhënave. Këto konventat semantike janë një shembull.

Drafti i parë bazohet në formatin aktual të të dhënave të OpenCensus dhe do të përmbajë sa vijon:

  • Një skemë të dhënash që zbaton një specifikim ndër-gjuhësh.
  • Përkufizimet e meta të dhënave për operacionet e zakonshme.
  • Përkufizimet JSON dhe Protobuf.
  • Zbatimi i klientëve referencë.

Ju lutemi vini re se ekziston gjithashtu një protokoll me tela që shpërndan gjurmë brenda brezit, të cilin do të donim ta standardizonim gjithashtu. Formati i Shpërndarjes Gjurmë-konteksti zhvilluar përmes W3C.

Objektivi: barazi në të gjitha gjuhët kryesore të mbështetura (përfundimi deri më 6 shtator)

Ne duhet të arrijmë barazinë për ekosistemin aktual gjuhësor duke zëvendësuar projektet e vjetra me të reja.

  • Përkufizimet e ndërfaqes për gjurmimin, metrikën dhe përhapjen e kontekstit bazuar në një specifikim ndër-gjuhësh.
  • Një SDK e gatshme për përdorim që zbaton këto ndërfaqe dhe eksporton Trace-Data. Aty ku është e mundur, SDK-ja do të krijohet duke transferuar një zbatim ekzistues nga OpenCensus.
  • Paketa e veglave për bibliotekat e njohura aktualisht të mbuluara në OpenTracing dhe OpenCensus.

Ne gjithashtu vlerësojmë përputhshmërinë e prapambetur dhe duam të sigurojmë një tranzicion të qetë nga projektet ekzistuese.

  • SDK-ja e re do të jetë e pajtueshme me ndërfaqet aktuale OpenTracing. Ato do të lejojnë që veglat e trashëgimisë OpenTracing të funksionojnë së bashku me mjete të reja në të njëjtin proces, duke i lejuar përdoruesit të migrojnë punën e tyre me kalimin e kohës.
  • Kur SDK-ja e re të jetë gati, do të krijohet një plan përmirësimi për përdoruesit aktualë të OpenCensus. Ashtu si me OpenTracing, mjetet e trashëgimisë do të jenë në gjendje të vazhdojnë të punojnë së bashku me ato të reja.
  • Deri në nëntor, si OpenTracing ashtu edhe OpenCensus do të jenë të mbyllura për pranimin e ndryshimeve. Përputhshmëria e prapambetur me mjetet e vjetra do të mbështetet për dy vjet.

Krijimi i një SDK-je më të mirë në klasë për çdo gjuhë kërkon shumë punë dhe kjo është ajo që na duhet më shumë.

Qëllimi: dokumentacioni bazë (përfundimi deri më 6 shtator)

Një faktor kritik në suksesin e çdo projekti me burim të hapur është dokumentacioni. Ne duam dokumentacion dhe mjete trajnimi të nivelit të lartë, dhe shkrimtarët tanë teknikë janë zhvilluesit më aktivë në projekt. Mësimi i zhvilluesve se si të monitorojnë siç duhet softuerin është një nga ndikimet më të rëndësishme që duam të kemi në botë.

Pjesët e mëposhtme të dokumentacionit janë minimumi i kërkuar për të filluar:

  • Orientimi i projektit.
  • Vëzhgueshmëria 101.
  • Fillimi i punës.
  • Udhëzues gjuhësor (veçmas për secilën).

Shkrimtarë të të gjitha niveleve janë të mirëpritur! Faqja jonë e re bazohet në Hugo, duke përdorur shënime të rregullta, kështu që është mjaft e lehtë të kontribuosh.

Objektivi: Regjistri v1.0 (përfundimi deri më 6 korrik)

Regjistri - një tjetër komponent kritik, një version i përmirësuar Regjistri OpenTracing.

  • Është e lehtë të gjesh biblioteka, shtojca, instalues ​​dhe komponentë të tjerë.
  • Menaxhim i lehtë i komponentëve të Regjistrit.
  • Mund të zbuloni se cilat veçori të SDK janë të disponueshme në secilën gjuhë.

Nëse jeni të interesuar për dizajn, ndërfaqe dhe UX, ne kemi një projekt të shkëlqyer për pjesëmarrje personale.

Objektivi: infrastruktura për testimin dhe lëshimin e softuerit (përfundimi deri më 6 shtator)

Për t'u siguruar që ne vazhdojmë të ofrojmë kod të sigurt tek i cili mund të mbështeteni, ne kemi një angazhim të projektimit për të ndërtuar testime cilësore softuerësh dhe linja tubacionesh. Ju lutemi na tregoni nëse mund të kujdeseni për tubacionet për testimin, karakterizimin dhe lëshimin e softuerit. Ne tregojmë qartë nivelin e gatishmërisë së prodhimit dhe pjekuria e infrastrukturës së testimit do të jetë faktori kryesor vendimtar për ne.

Objektivi: mbyllja e projekteve OpenTracing dhe OpenCensus (përfundimi deri më 6 nëntor)

Ne planifikojmë të fillojmë mbylljen e projekteve të vjetra më 6 shtator, nëse projekti i ri arrin barazinë me to. 2 muaj më vonë, me barazinë e të gjitha gjuhëve, ne planifikojmë të mbyllim projektet OpenTracing dhe OpenCensus. Duhet kuptuar kështu:

  • depot do të ngrihen dhe nuk do të bëhen ndryshime të mëtejshme.
  • Paketa aktuale e mjeteve ka planifikuar një periudhë mbështetëse dyvjeçare.
  • përdoruesit do të jenë në gjendje të përmirësojnë në SDK-në e re duke përdorur të njëjtat mjete.
  • Një përditësim gradual do të jetë i mundur.

Bashkohu me ne

Ne do të mirëpresim çdo ndihmë pasi ky është një projekt i madh. Nëse jeni të interesuar të mësoni rreth vëzhgimit, tani është koha!

Burimi: www.habr.com

Shto një koment