OpenTracing
Innloggingen med hyperkoblingen er synlig.
OpenTracing har utviklet en plattformuavhengig og leverandøruavhengig Trace-protokoll, som gjør det enkelt for utviklere å legge til eller erstatte implementasjoner av distribuerte sporingssystemer. I november 2016 stemte CNCFs tekniske komité for å akseptere OpenTracing som et hostet prosjekt, som er CNCFs tredje prosjekt, det første er Kubernetes, og det andre er Prometheus, som viser at CNCF legger stor vekt på observabiliteten bak OpenTracing. For eksempel følger både den berømte Zipkin og Jaeger OpenTracing-protokollen.
OpenCensus
Innloggingen med hyperkoblingen er synlig.
Du tenker kanskje, nå som OpenTracing er her, hva skal OpenCensus gjøre med moroa? Beklager, du bør vite at initiativtageren til OpenCensus er Google, som er det første selskapet som foreslo konseptet Tracing, og OpenCensus er fellesskapsversjonen av Google Dapper. Den største forskjellen mellom OpenCensus og OpenTracing er at i tillegg til Tracing, inkluderer det også metrikker, slik at grunnleggende målingsporing også kan utføres på OpenCensus. En annen forskjell er at OpenCensus ikke er en enkel spesifikasjon, han gjør også alt, inkludert datainnsamlingsagenter og innsamlere. OpenCensus har også en stor tilhengerskare, og den største nyheten nylig er at Microsoft også har kunngjort at de har sluttet seg til, og OpenCensus kan beskrives som en tiger med vinger.
Hva er OpenTelemetry?
Innloggingen med hyperkoblingen er synlig.
OpenTelemetry slår sammen OpenTracing- og OpenCensus-prosjektene, og tilbyr et sett med API-er og biblioteker for å standardisere innsamling og overføring av telemetridata. OpenTelemetry tilbyr et sikkert, leverandørnøytralt verktøy som gjør det mulig å sende data til ulike backends etter behov.
OpenTelemetriry-prosjektet består av følgende komponenter:
- Driv bruk av konsistente spesifikasjoner på tvers av alle prosjekter
- Spesifikasjonsbasert, med API-er for grensesnitt og implementasjoner
- SDK-er (implementasjoner av API-er) i ulike språk, som Java, Python, Go, Erlang, osv
- Eksportører: Data kan sendes til en backend etter eget valg
- Collectors: Leverandørnøytral implementering for behandling og eksport av telemetridata
Opentelemetri-terminologi:
Spor: Registrerer forespørselsaktiviteten gjennom et distribuert system, og et spor er en rettet asyklisk graf av spenn
Spenn: En sporing representerer en navngitt, tidsbasert operasjon. Spenner over reir for å danne sportrær. Hver spor inneholder et rotspenn som beskriver ende-til-ende-latens, og deloperasjonene kan også ha ett eller flere delspenn.
Målinger: De rå metrikkdataene som samles inn under kjøring om tjenesten. metriske instrumenter definert av Opentelemetri. Observer støtter datainnsamling gjennom asynkrone API-er, med én data ved hvert innsamlingsintervall.
Kontekst: Et spenn inneholder en spenn-kontekst, som er en globalt unik identifikator som representerer den unike forespørselen hver spenn tilhører, samt dataene som kreves for å overføre sporingsinformasjon over tjenestegrenser. OpenTelemetry støtter også korrelasjonskontekst, som kan inneholde brukerdefinerte attributter. Korrelasjonskonteksten er ikke nødvendig, og komponenten kan velge å ikke bære og lagre denne informasjonen.
Kontekstpropagasjon: Indikerer overføring av kontekstuell informasjon mellom ulike tjenester, vanligvis via HTTP-header. Kontekstpropagasjon er en av nøkkelfunksjonene i OpenTelemetri-systemet. I tillegg til sporing finnes det noen interessante bruksområder, som å utføre A/B-testing. OpenTelemetry støtter kontekstpropagasjon for flere protokoller for å unngå mulige problemer, men det er viktig å merke seg at det er best å bruke én tilnærming i din egen applikasjon.
Fordeler med OpenTelemetry:
Ved å slå sammen OpenTracing og OpenCensus til én åpen standard, tilbyr OpenTelemetry følgende bekvemmeligheter:
Enkelt å velge: I stedet for å måtte velge mellom de to standardene, er OpenTelemetry kompatibelt med både OpenTracing og OpenCensus. Plattformuavhengig: OpenTelemetry støtter ulike språk og backends. Det representerer en leverandørnøytral måte å fange og overføre telemetridata til backend uten å endre eksisterende verktøy. Forenklet observabilitet: Som OpenTelemetry uttrykker det, «høykvalitets telemetri krever høykvalitets telemetri». Jeg skulle ønske flere leverandører byttet til OpenTelemetry fordi det er mer praktisk og bare trenger å teste én standard.
|