
Författare: Ted Yang, Pritam Shah och "Tekniska specifikationskommittén" (Carlos Alberto, Bogdan Drutu, Sergey Kanjelyev och Yuri Shkuro).
Det gemensamma projektet har fÄtt namnet:
VÀldigt, vÀldigt kort:
- Vi skapar en ny enhetlig uppsÀttning bibliotek och specifikationer för att möjliggöra övervakning av telemetri. Den kommer att förena projekten OpenTracing och OpenCensus samt erbjuda ett stödfullstÀndigt sÀtt för migrering.
- Referensimplementationen i Java kommer att finnas tillgÀnglig den 24 april, och arbetet med implementationerna pÄ andra sprÄk kommer börja fullt ut den 8 maj 2019. Bekanta dig med schemat .
- Paritet med befintliga projekt för C#, Golang, Java, NodeJS och Python Àr planerad senast september 2019. Vi har mycket arbete framför oss, men vi klarar det om vi arbetar parallellt. Om du Àr intresserad av att delta i detta projekt, vÀnligen registrera dig och lÄt oss veta hur du vill bidra.
- NÀr implementationen pÄ varje sprÄk har mognat kommer de relevanta projekten OpenTracing och OpenCensus att stÀngas. Detta innebÀr att gamla projekt kommer att frysas, medan det nya projektet fortsÀtter att stödja det befintliga verktyget under tvÄ Är, med bakÄtkompatibilitet.
Projektöversikt

Vi genomför en sammanslagning! Det högsta mÄlet Àr att samla projekten OpenTracing och OpenCensus i ett gemensamt projekt.
KÀrnan i det nya projektet kommer att vara en uppsÀttning rena och genomtÀnkta grÀnssnitt, inklusive den traditionella sammanstÀllningen av bibliotek som implementerar dessa grÀnssnitt i form av sÄ kallade SDK. Kicken kommer att vara rekommenderade standarder för data och trÄdade protokoll, inklusive gemensamma delar av infrastrukturen.
Resultatet kommer att bli ett fullstÀndigt telemetrisystem lÀmpligt för övervakning av mikrotjÀnster och andra typer av moderna distribuerade system, kompatibelt med de flesta stora OSS och kommersiella grundprogram.
HuvudhÀndelser
24.04 â Referenskandidaten tillhandahĂ„lls för granskning.
8.05 â Ett team formas som börjar arbeta pĂ„ alla sprĂ„k.
20.05 â Det officiella lanseringen av projektet pĂ„ Kubecon Barcelona.
6.09 â Implementationer pĂ„ C#, Golang, Java, NodeJS och Python nĂ„r paritet med motsvarigheterna.
6.11 â Den officiella avslutningen av projekten OpenTracing och OpenCensus.
20.11 â Avskedsfest för avslutningen av projekten pĂ„ Observability Summit, Kubecon San Diego.
Tidslinje för konvergens
Migration for each language involves assembling an SDK ready for production deployment, tools for popular libraries, documentation, CI, backward compatibility tools, and closing related OpenCensus and OpenTracing projects (the "sunset"). We set an ambitious goal for September 2019 â to achieve parity for C#, Golang, Java, NodeJS, and Python. We will shift the "sunset" date until all languages are ready. However, it is preferable to avoid this.
When reviewing goals, please consider your personal involvement and let us know by filling out , or by greeting in the Gitter chats of the och . You can view the timeline in infographic format .
Goal: first draft of the cross-language specification (completion by May 8)
It is important to work cohesively, even when working in parallel across different languages. The cross-language specification provides guidance for the project. It sounds prosaic, but it guarantees support for a coherent system that feels familiar regardless of programming language.
Mandatory requirements for the first draft of the specification for language X:
- Definitions of common terminology.
- A model for describing distributed transactions, statistics, and metrics.
- Clarifications on important issues that have arisen during implementation.
This goal blocks other work, the first draft must be completed by May 8.
Goal: first draft for the data specification (completion by July 6)
The data specification defines a common data format for traces and metrics, allowing data exported from all processes to be processed by the same telemetry infrastructure regardless of the data generation process. This includes a data schema for the tracing model as described in the cross-language specification. It also includes definitions of metadata for common operations that tracing uses to capture: for example, HTTP requests, errors, and database queries. These are examples.
The first draft is based on the current OpenCensus data format and will contain the following:
- A data schema implementing the cross-language specification.
- Definitions of metadata for common operations.
- Definitions for JSON and Protobuf.
- Reference client implementation.
Vi ber er att notera att det ocksÄ finns ett trÄdat protokoll som sprider spÄrningar i intrabandsformat, och som vi ocksÄ skulle vilja standardisera. Spridningsformatet utvecklas genom W3C.
MÄl: Paritet över alla huvudstödda sprÄk (fÀrdigstÀllande senast den 6 september)
Vi mÄste uppnÄ paritet för det nuvarande sprÄkekosystemet genom att ersÀtta gamla projekt med nya.
- Definitioner av grÀnssnitt för spÄrning, mÀtningar och kontextspridning baserat pÄ ett sprÄköverskridande specifikation.
- Ett fÀrdigt SDK som implementerar dessa grÀnssnitt och exporterar Trace-Data. Om möjligt kommer SDK:n att skapas genom att överföra en befintlig implementation frÄn OpenCensus.
- Verktyg för populÀra bibliotek som för nÀrvarande omfattas av OpenTracing och OpenCensus.
Vi vÀrdesÀtter ocksÄ bakÄtkompatibilitet och vill sÀkerstÀlla en smidig övergÄng frÄn befintliga projekt.
- Det nya SDK:t kommer att innehÄlla verktyg för bakÄtkompatibilitet med nuvarande OpenTracing-grÀnssnitt. Dessa kommer att göra att förÄldrade OpenTracing-verktyg kan fungera ihop med nya verktyg i samma process, vilket lÄter anvÀndarna gradvis överföra sina lösningar.
- NÀr det nya SDK:t Àr klart kommer en uppdateringsplan att skapas för nuvarande anvÀndare av OpenCensus. Precis som med OpenTracing kommer förÄldrade verktyg att kunna fortsÀtta fungera tillsammans med nya.
- Till november kommer bÄde OpenTracing och OpenCensus att stÀngas för Àndringar. BakÄtkompatibilitet med förÄldrade verktyg kommer att stödjas under tvÄ Är.
Att skapa ett bÀsta i sitt slag SDK för varje sprÄk krÀver enormt arbete, och det Àr just hÀr vi behöver mest hjÀlp.
MÄl: GrundlÀggande dokumentation (fÀrdigstÀllande senast den 6 september)
En kritisk framgÄngsfaktor för alla öppen kÀllkod-projekt Àr dokumentationen. Vi vill ha förstklassig dokumentation och utbildningsresurser, vÄra tekniska författare Àr de mest aktiva utvecklarna i projektet. Att lÀra utvecklare om korrekt observationsmetodik för mjukvara Àr en av de viktigaste pÄverkan vi vill ha pÄ vÀrlden.
Följande delar av dokumentationen Àr minimalt nödvÀndiga för att komma igÄng:
- Projektöversikt.
- Observabilitet 101.
- Komma igÄng.
- SprÄkguider (var och en för sig).
Vi bjuder in skribenter pÄ alla nivÄer! VÄr nya webbplats Àr baserad pÄ Hugo och anvÀnder vanlig markup, sÄ det Àr ganska enkelt att bidra.
MÄl: Registry v1.0 (fÀrdigstÀllande senast den 6 juli)
Registry â en annan kritisk komponent, en förbĂ€ttrad version .
- LÀtt att hitta bibliotek, plugins, installatörer och andra komponenter.
- Enkelt att hantera komponenterna i Registry.
- Du kan ta reda pÄ vilka SDK-funktioner som Àr tillgÀngliga pÄ varje sprÄk.
Om du Ă€r intresserad av design, grĂ€nssnitt och UX â vi har ett utmĂ€rkt projekt för personlig medverkan.
MÄl: Infrastruktur för testning och distribution av programvara (fÀrdigstÀllande senast den 6 september)
För att vi ska kunna fortsÀtta leverera sÀker kod som man kan lita pÄ har vi en projektÄtagande att skapa kvalitativa pipelines för testning och distribution av programvara. VÀnligen meddela oss om du kan ta hand om pipelines för testning, prestationsmÀtning och programvarudistribution. Vi markerar tydligt produktionsberedskapsnivÄn, och mognaden av testinfrastrukturen kommer att vara en avgörande faktor för oss.
MÄl: Avslut av projekten OpenTracing och OpenCensus (fÀrdigstÀllande senast den 6 november)
Vi planerar att pÄbörja avstÀngning av gamla projekt den 6 september, om det nya projektet uppnÄr paritet med dem. TvÄ mÄnader senare, vid paritet för alla sprÄk, planerar vi att avsluta projekten OpenTracing och OpenCensus. Detta ska förstÄs som att:
- arkiven kommer att frysas, inga ytterligare Àndringar kommer att göras.
- för det nuvarande verktyget Àr en tvÄÄrig supportperiod planerad.
- anvÀndare kommer att kunna uppgradera till den nya SDK:n med det tidigare verktyget.
- det kommer att vara möjligt med gradvis uppgradering.
GĂ„ med
Vi vĂ€lkomnar all hjĂ€lp, eftersom detta Ă€r ett stort projekt. Om du vill veta mer om observabilitet â nu Ă€r rĂ€tt tid!
- Fyll i för att medverka direkt och gÄ med i teamet.
- Kontakta oss via kanalerna och Gitter.
- Titta pÄ , som Àr under utveckling.
KĂ€lla: habr.com
