OpenTracing
Přihlášení k hypertextovému odkazu je viditelné.
OpenTracing vyvinul protokol Trace nezávislý na platformě a dodavateli, který umožňuje vývojářům snadno přidávat nebo nahrazovat implementace distribuovaných trasovacích systémů. V listopadu 2016 Technický výbor CNCF hlasoval pro přijetí OpenTracing jako hostovaného projektu, což je třetí projekt CNCF, prvním je Kubernetes a druhým Prometheus, což ukazuje, že CNCF přikládá velký význam pozorovatelnosti za OpenTracing. Například slavné Zipkin i Jaeger používají protokol OpenTracing.
OpenCensus
Přihlášení k hypertextovému odkazu je viditelné.
Možná si říkáte, co teď s OpenTracingem udělá OpenCensus s tou zábavou? Omlouvám se, měli byste vědět, že iniciátorem OpenCensus je Google, což je první společnost, která navrhla koncept trasování, a OpenCensus je komunitní verzí Google Dapper. Největší rozdíl mezi OpenCensus a OpenTracing je v tom, že kromě Tracingu obsahuje také metriky, takže základní monitorování metrik lze provádět i na OpenCensus. Další rozdíl je, že OpenCensus není jednoduchá specifikace, on také dělá vše, včetně agentů a sběratelů dat. OpenCensus má také velkou základnu fanoušků a největší novinkou v poslední době je, že Microsoft také oznámil svůj vstup, a OpenCensus lze popsat jako tygra s křídly.
Co je OpenTelemetry?
Přihlášení k hypertextovému odkazu je viditelné.
OpenTelemetry spojuje projekty OpenTracing a OpenCensus a poskytuje sadu API a knihoven pro standardizaci sběru a přenosu telemetrických dat. OpenTelemetry poskytuje bezpečný, dodavatelsky neutrální nástroj, který umožňuje odesílat data na různé backendy podle potřeby.
Projekt OpenTelemetry se skládá z následujících komponent:
- Podporovat používání konzistentních specifikací napříč všemi projekty
- Založený na specifikacích, s API pro rozhraní a implementace
- SDK (implementace API) v různých jazycích, jako jsou Java, Python, Go, Erlang atd
- Exportéři: Data lze posílat na backend dle dle vašeho výběru
- Collectors: Implementaci nezávislá na dodavateli pro zpracování a export telemetrických dat
Terminologie Opentelemetrie:
Traces: Zaznamenává aktivitu požadavku prostřednictvím distribuovaného systému a trace je orientovaný acyklický graf obalů
Spans: Trace představuje pojmenovanou, časově založenou operaci. Rozpětí hnízdí a vytváří stopové stromy. Každá stopa obsahuje kořenový rozsah, který popisuje latenci od začátku do konce, a jeho podoperace mohou mít také jeden nebo více podobalů.
Metriky: Surová metrická data zachycená za běhu o službě. metrické přístroje definované pomocí Opentelemetry. Observer podporuje sběr dat prostřednictvím asynchronních API, přičemž při každém akvizičním intervalu jsou jedna data.
Kontext: Span obsahuje span context, což je globálně jedinečný identifikátor reprezentující jedinečný požadavek, ke kterému každý span patří, stejně jako data potřebná k přenosu informací o trace přes hranice služeb. OpenTelemetry také podporuje korelační kontext, který může obsahovat uživatelsky definované atributy. Korelační kontext není vyžadován a komponenta se může rozhodnout, že tuto informaci nebude přenášet a ukládat.
Šíření kontextu: Označuje předávání kontextových informací mezi různými službami, obvykle prostřednictvím HTTP hlavičky. Šíření kontextu je jednou z klíčových vlastností systému Opentelemetry. Kromě trasování existují i zajímavé využití, například provádění A/B testování. OpenTelemetry podporuje šíření kontextu pro více protokolů, aby se předešlo možným problémům, ale je důležité poznamenat, že je nejlepší použít jeden přístup ve vlastní aplikaci.
Výhody OpenTelemetry:
Sloučením OpenTracing a OpenCensus do jednoho otevřeného standardu poskytuje OpenTelemetry následující výhody:
Snadná volba: Místo nutnosti volby mezi těmito dvěma standardy je OpenTelemetry kompatibilní jak s OpenTracing, tak s OpenCensus. Cross-platformní: OpenTelemetry podporuje různé jazyky a backendy. Představuje nezávislý způsob zachycení a přenosu telemetrických dat na backend bez nutnosti měnit stávající nástroje. Zjednodušená pozorovatelnost: Jak uvádí OpenTelemetry, "vysoce kvalitní telemetrie vyžaduje vysoce kvalitní telemetrii". Rád bych viděl, aby více dodavatelů přešlo na OpenTelemetry, protože je to pohodlnější a stačí testovat jen jeden standard.
|