Kunfandado de OpenTracing kaj OpenCensus: La Vojo al Konverĝo

Kunfandado de OpenTracing kaj OpenCensus: La Vojo al Konverĝo

Aŭtoroj: Ted Young, Pritam Shah kaj la Komitato pri Teknikaj Specifoj (Karlo Alberto, Bogdan Drutu, Sergej Kanĵelev kaj Jurij Ŝkuro).

La komuna projekto akiris la nomon: http://opentelemetry.io

Tre, tre mallonge:

  • Ni kreas novan unuigitan aron de bibliotekoj kaj specifoj por telemetriaj monitoradkapabloj. Ĝi kunfandos la projektojn OpenTracing kaj OpenCensus kaj disponigos subtenan vojon por migrado.
  • La referenca efektivigo en Java estos disponebla la 24-an de aprilo, kaj laboroj pri efektivigoj en aliaj lingvoj komenciĝos plene la 8-an de majo 2019. Rigardu la horaron povas esti ĉi tie.
  • Antaŭ septembro 2019, egaleco kun ekzistantaj projektoj por C#, Golang, Java, NodeJS kaj Python estas planita. Estas multe da laboro antaŭ ni, sed ni povas elteni se ni laboras paralele. Se vi interesiĝas partopreni en ĉi tiu projekto, bonvolu registriĝi kaj sciigi al ni kiel vi ŝatus kontribui.
  • Post kiam la efektivigo en ĉiu lingvo estas matura, la respondaj OpenTracing kaj OpenCensus projektoj estos fermitaj. Ĉi tio signifas, ke la malnovaj projektoj estos frostigitaj, kaj la nova projekto daŭre subtenos la ekzistantajn ilojn dum du jaroj uzante malantaŭan kongruon.

Superrigardo de la projekto

Kunfandado de OpenTracing kaj OpenCensus: La Vojo al Konverĝo

Ni faras fuzion! La fina celo estas kunigi la projektojn OpenTracing kaj OpenCensus en unu komunan projekton.
La kerno de la nova projekto estos aro de puraj kaj pripensemaj interfacoj, inkluzive de la tradicia aro de bibliotekoj, kiuj efektivigas ĉi tiujn interfacojn en la formo de tn. SDK. La glaciaĵo sur la kuko estos rekomendindaj normoj por datumoj kaj drataj protokoloj, inkluzive de komunaj partoj de la infrastrukturo.
La rezulto estos kompleta telemetria sistemo taŭga por monitorado de mikroservoj kaj aliaj specoj de modernaj distribuitaj sistemoj, kongrua kun plej granda OSS kaj komerca backend-programaro.

Ĉefaj eventoj

24.04/XNUMX — Referenca kandidato prezentita por revizio.
8.05 — Teamo formiĝas kaj komencas labori en ĉiuj lingvoj.
20.05 — Oficiala lanĉo de la projekto ĉe Kubecon Barcelona.
6.09 - Efektivigoj en C#, Golang, Java, NodeJS kaj Python atingas egalecon kun siaj ekvivalentoj.
6.11 - Oficiala kompletigo de la projektoj OpenTracing kaj OpenCensus.
20.11 — Adiaŭa festo omaĝe al la kompletiĝo de projektoj ĉe la Observability Summit, Kubecon San Diego.

Templinio de konverĝo

Kunfandado de OpenTracing kaj OpenCensus: La Vojo al Konverĝo

Migrado por ĉiu lingvo inkluzivas produktadpretan SDK-konstruaĵon, ilaron por popularaj bibliotekoj, dokumentaron, CI, malantaŭkongruajn ilojn, kaj la fermon de la rilataj OpenCensus kaj OpenTracing projektoj ("sunsubiro"). Ni fiksis ambician celon por septembro 2019 - atingi egalecon por la lingvoj C#, Golang, Java, NodeJS kaj Python. Ni movos la sunsubiran daton ĝis ĉiuj lingvoj estos pretaj. Sed estas preferinde eviti ĉi tion.
Vidante celojn, bonvolu konsideri vian personan implikiĝon, informu nin per plenigo Aliĝilo, aŭ salutante en la Gitter-babiloj de la projektoj OpenTracing и Malferma Censo. Vi povas vidi la grafeon kiel infografion tie.

Celo: Unua skizo de la translingva specifo (kompletigo antaŭ la 8-a de majo)

Gravas labori kunhezie, eĉ kiam oni laboras paralele en malsamaj lingvoj. La translingva specifo provizas gvidon por la projekto. Ĝi sonas proza, sed ĝi garantias subtenon por kohera sistemo, kiu sentas sin konata sendepende de la programlingvo.

Devigaj postuloj por la unua skiza specifo por lingvo X:

  • Difinoj de ĝenerala terminologio.
  • Modelo por priskribi distribuitajn transakciojn, statistikojn kaj metrikojn.
  • Klarigoj pri gravaj aferoj, kiuj aperis dum efektivigo.

Ĉi tiu celo blokas la reston de la laboro, la unua malneto devas esti finita ĝis la 8-a de majo.

Celo: Unua skizo por datenspecifo (kompletigo antaŭ la 6-a de julio)

La datenspecifo difinas oftan datenformaton por spuroj kaj metriko tiel ke datenoj eksportitaj per ĉiuj procezoj povas esti prilaboritaj per la sama telemetriinfrastrukturo nekonsiderante la datumgeneradprocezo. Tio inkludas la datenskemon por la spurmodelo priskribita en la translingva specifo. Ankaŭ inkluzivitaj estas metadatumaj difinoj por oftaj operacioj, kiujn la spuro uzas por kapti, kiel HTTP-petoj, eraroj kaj datumbazaj demandoj. Ĉi tiuj semantikaj konvencioj estas ekzemplo.

La unua skizo baziĝas sur la nuna OpenCensus-datumformato kaj enhavos la jenon:

  • Datenskemo kiu efektivigas translingvan specifon.
  • Metadatenoj difinoj por oftaj operacioj.
  • JSON kaj Protobuf-difinoj.
  • Efektivigo de referencaj klientoj.

Bonvolu noti, ke ekzistas ankaŭ drata protokolo, kiu distribuas spurojn en-bendo, kiun ni ŝatus ankaŭ normigi. Formato de distribuo Spuro-Kunteksto evoluigita per W3C.

Celo: egaleco en ĉiuj ĉefaj subtenataj lingvoj (kompletigo antaŭ la 6-a de septembro)

Ni devas atingi egalecon por la nuna lingvoekosistemo anstataŭigante malnovajn projektojn per novaj.

  • Interfacdifinoj por spurado, metriko, kaj kunteksta disvastigo surbaze de translingva specifo.
  • Preta uzebla SDK, kiu efektivigas ĉi tiujn interfacojn kaj eksportas Trace-Data. Kie ebla, la SDK estos kreita per porti ekzistantan efektivigon de OpenCensus.
  • Ilaro por popularaj bibliotekoj nuntempe kovritaj en OpenTracing kaj OpenCensus.

Ni ankaŭ taksas malantaŭan kongruecon kaj volas certigi glatan transiron de ekzistantaj projektoj.

  • La nova SDK estos malantaŭen kongrua kun nunaj OpenTracing-interfacoj. Ili permesos al heredaj OpenTracing-iloj funkcii kune kun novaj iloj en la sama procezo, permesante al uzantoj migri sian laboron laŭlonge de la tempo.
  • Kiam la nova SDK estas preta, ĝisdatiga plano estos kreita por nunaj OpenCensus-uzantoj. Kiel kun OpenTracing, heredaj iloj povos daŭre labori kune kun novaj.
  • Antaŭ novembro, kaj OpenTracing kaj OpenCensus estos fermitaj por akcepti ŝanĝojn. Malantaŭa kongruo kun heredaj iloj estos subtenata dum du jaroj.

Krei plej bonan en la klaso SDK por ĉiu lingvo postulas multan laboron, kaj tion ni plej bezonas.

Celo: baza dokumentaro (kompletigo antaŭ la 6-a de septembro)

Kritika faktoro en la sukceso de iu malfermfonta projekto estas dokumentado. Ni volas altnivelajn dokumentadojn kaj trejnajn ilojn, kaj niaj teknikaj verkistoj estas la plej aktivaj programistoj en la projekto. Instrui al programistoj kiel ĝuste monitori programaron estas unu el la plej gravaj efikoj, kiujn ni volas havi sur la mondo.

La sekvaj dokumentoj estas la minimumo necesa por komenci:

  • Projektorientiĝo.
  • Observeblo 101.
  • Komenco de laboro.
  • Lingvaj gvidiloj (aparte por ĉiu).

Verkistoj de ĉiuj niveloj estas bonvenaj! Nia nova retejo baziĝas sur Hugo, uzante regulan markadon, do estas sufiĉe facile kontribui.

Celo: Registro v1.0 (kompletigo antaŭ la 6-a de julio)

Registro - alia kritika komponanto, plibonigita versio OpenTracing Registry.

  • Estas facile trovi bibliotekojn, kromaĵojn, instalilojn kaj aliajn komponantojn.
  • Facila administrado de Registro-komponentoj.
  • Vi povas ekscii, kiuj SDK-funkcioj disponeblas en ĉiu lingvo.

Se vi interesiĝas pri dezajno, interfaco kaj UX, ni havas bonegan projekton por persona partopreno.

Celo: infrastrukturo por programaro-testado kaj liberigo (kompletigo antaŭ la 6-a de septembro)

Por certigi, ke ni daŭre liveras sekuran kodon, je kiu vi povas fidi, ni havas projektan devontigon konstrui kvalitajn programajn testadojn kaj liberigi duktoj. Bonvolu sciigi nin ĉu vi povas zorgi pri duktoj por testado, karakterizado kaj programaro-eldono. Ni klare indikas la nivelon de produktadpreteco, kaj la matureco de la testa infrastrukturo estos la ĉefa decida faktoro por ni.

Celo: fermi la projektojn OpenTracing kaj OpenCensus (kompletigo antaŭ la 6-a de novembro)

Ni planas komenci fermi malnovajn projektojn la 6an de septembro, se la nova projekto atingas egalecon kun ili. 2 monatojn poste, kun egaleco de ĉiuj lingvoj, ni planas fermi la projektojn OpenTracing kaj OpenCensus. Oni devas kompreni jene:

  • la deponejoj estos frostigitaj kaj neniuj pluaj ŝanĝoj estos faritaj.
  • La nuna ilaro havas dujaran subtenan periodon planitan.
  • uzantoj povos ĝisdatigi al la nova SDK uzante la samajn ilojn.
  • Laŭgrada ĝisdatigo eblos.

Aliĝu

Ni bonvenigos ajnan helpon ĉar ĉi tio estas grandega projekto. Se vi interesiĝas lerni pri observeblo, nun estas la tempo!

fonto: www.habr.com

Aldoni komenton