OpenTelemetry 已成為可觀測(cè)性體驗(yàn)的重要組成部分,隨著其持續(xù)發(fā)展,它日益滿足開發(fā)人員和運(yùn)維人員的DevOps需求。然而,作為當(dāng)前的主要開源項(xiàng)目之一,它仍需完善。它的功能——雖然可以說對(duì)于可觀測(cè)性來說已經(jīng)必不可少——仍處于進(jìn)行中,其成功取決于社區(qū)持續(xù)的支持和辛勤工作。它的實(shí)用性還取決于與OpenTelemetry結(jié)合使用的可觀測(cè)性工具和平臺(tái)。
譯自O(shè)penTelemetry Is No ‘Magic Button’ for Observability,作者 B Cameron Gain。
“有些人將 OpenTelemetry 視為一個(gè)神奇按鈕,但最終,它應(yīng)該幫助你更好地理解你的可觀測(cè)性數(shù)據(jù)——這取決于你將它與什么一起使用,”Ryan Perry,Grafana的工程總監(jiān)告訴 The New Stack。“可觀測(cè)性的全部意義在于能夠詢問有關(guān)你的系統(tǒng)的問題并獲得答案,而無需添加新的孤島式檢測(cè)。”
來源:OpenTelemetry 文檔。
但在 OpenTelemetry 之前,甚至在可觀測(cè)性之前,就有監(jiān)控。遙測(cè)數(shù)據(jù)包括日志、指標(biāo)以及最近的跟蹤,提供需要審查或通過監(jiān)控收集的數(shù)據(jù)。然而,一旦通過監(jiān)控收集和觀察,如果數(shù)據(jù)未以適當(dāng)?shù)姆绞浇馕龌蛞龑?dǎo)以消除無關(guān)的遙測(cè)數(shù)據(jù),那么它就沒有多大意義。
同時(shí),作為一名使用不同遙測(cè)數(shù)據(jù)的運(yùn)維人員,對(duì)事件或性能的觀察是有用的,并且在一定程度上一直是有用的。但它達(dá)不到可觀測(cè)性的要求,可觀測(cè)性涉及基于使用監(jiān)控收集的數(shù)據(jù)進(jìn)行推斷的分析和得出可操作的見解。
OpenTelemetry 為可觀測(cè)性提供了一個(gè)標(biāo)準(zhǔn)化流程。它可以看作三個(gè)主要組成部分:標(biāo)準(zhǔn)、SDK和收集器。標(biāo)準(zhǔn)確保互操作性,SDK 簡(jiǎn)化應(yīng)用程序檢測(cè),收集器充當(dāng)供應(yīng)商中立代理。
它用于理解由指標(biāo)、日志和跟蹤組成的遙測(cè)數(shù)據(jù)。它不僅僅是供應(yīng)商中立,因?yàn)樗荚谠试S用戶將他們選擇的可觀測(cè)性工具集成到一個(gè)通用方法中,從而統(tǒng)一它們。
自 2019 年成立以來,OpenTelemetry 已可用于容納由跟蹤組成的遙測(cè)數(shù)據(jù),隨后是指標(biāo),最近是 2023 年的日志。
這在實(shí)踐中意味著用戶將尋求可觀測(cè)性來獲得理解并執(zhí)行其他操作。通常,你可以詢問有關(guān)你的系統(tǒng)的信息實(shí)時(shí)收集,例如為什么服務(wù)器內(nèi)存不足、為什么跟蹤很慢、為什么請(qǐng)求很慢或?yàn)槭裁从绣e(cuò)誤日志,并且能夠在不執(zhí)行新操作的情況下獲得該答案。收集器擅長(zhǎng)以隨著時(shí)間推移越來越集成的形式獲取日志、指標(biāo)、跟蹤和配置文件,為你指出正確方向,使用正確的工具來回答你的問題。但在實(shí)踐中,它是一種工具,例如 Grafana Cloud Profiles(由 OSS 數(shù)據(jù)庫Pyroscope提供支持),它可以補(bǔ)充你的可觀測(cè)性,以“更好地回答你使用日志、指標(biāo)、跟蹤、配置文件或所有這些的某種組合提出的任何問題”,Grafana 的 Perry 說,他也是持續(xù)分析工具提供商Pyroscope的首席執(zhí)行官兼聯(lián)合創(chuàng)始人,Grafana Labs 于 2023 年收購了該公司。
領(lǐng)先的可觀測(cè)性提供商提供 OpenTelemetry 的支持、維護(hù)和開發(fā)。其中包括 Grafana、
Honeycomb、Datadog、Dynatrace、Splunk 等組織。他們有一個(gè)共同的利益,那就是讓 OpenTelemetry 變得更好。
同時(shí),他們還提供大量工作,在某些情況下,通過提供利用其功能的工具來讓 OpenTelemetry 變得更好。這些工具提供不同的分析,通常針對(duì)各種用例進(jìn)行專門化,因?yàn)樗鼈兏?jìng)爭(zhēng)提供獨(dú)特的功能。他們通過為項(xiàng)目本身做出貢獻(xiàn)以及創(chuàng)建和改進(jìn)與 OpenTelemetry 結(jié)合使用的解決方案來實(shí)現(xiàn)這一點(diǎn),即提供適當(dāng)?shù)目捎^察性所需的深度分析。
對(duì)于 Grafana Labs 來說,當(dāng)然,這是通過其對(duì)各種遙測(cè)數(shù)據(jù)的 Grafana 可視化來完成的。Grafana 在提高其可視化和應(yīng)用程序的可用性方面發(fā)揮了至關(guān)重要的作用,并且作為其排名前十的貢獻(xiàn)者之一,為 OpenTelemetry 做出了重大貢獻(xiàn)。
Grafana 確實(shí)是大力支持 OpenTelemetry 的互操作性愿景和缺乏供應(yīng)商鎖定機(jī)制的倡導(dǎo)者,Grafana 首席技術(shù)官Tom Wilkie在 4 月份于阿姆斯特丹舉行的年度用戶大會(huì)GrafanaCon期間告訴 The New Stack。“這與 Grafana 的‘大帳篷’理念和我們的開放思維文化產(chǎn)生共鳴。然而,OpenTelemetry 是一個(gè)龐大的項(xiàng)目,質(zhì)量差異很大。一些領(lǐng)域,如指標(biāo),尚未完全兌現(xiàn)其承諾,”他說。
例如,在指標(biāo)中,存在一些問題,例如一旦聲明指標(biāo)就無法將其刪除,導(dǎo)致“如果大量流失”,則可能出現(xiàn)內(nèi)存泄漏,Wilkie 說。“這些粗糙的邊緣阻止我們完全推薦將其用于指標(biāo)的生產(chǎn)用途——但我們正在努力解決這些問題。我們認(rèn)為消除這些問題是我們的責(zé)任。此外,至關(guān)重要的是要注意,所有這些都不是專有的,”他說。“我們?yōu)樵擁?xiàng)目做出貢獻(xiàn),確保我們的改進(jìn)使整個(gè)社區(qū)受益。我們有自己的 OpenTelemetry 組件發(fā)行版,這使我們能夠比等待上游批準(zhǔn)更快地發(fā)布錯(cuò)誤修復(fù)和安全更新。”
圖片
OpenTelemetry 集成,用于 Grafana Alloy 配置,與 Grafana 應(yīng)用程序可觀察性一起使用。
Grafana Alloy 發(fā)行版的 OpenTelemetry Collector 是開源的,以及它相關(guān)的.NET和JavaSDK 的發(fā)行版。“客戶尋求可以依靠的東西,并提供支持和維護(hù)合同,我們提供這些,”Wilkie 說。
圖片
Grafana 的開源Beyla通過eBPF提供跟蹤,這是收集遙測(cè)跟蹤的另一種方式。它的開發(fā)與 OpenTelemetry 項(xiàng)目的分析器并行,Grafana Labs 作為主要貢獻(xiàn)者深度參與了該分析器的開發(fā)。分析器應(yīng)該被證明對(duì)用戶很有用,因?yàn)樗ㄟ^擴(kuò)展到代碼級(jí)別來深入進(jìn)行可觀察性分析。它通過擴(kuò)展在統(tǒng)一流中提取的遙測(cè)數(shù)據(jù)來實(shí)現(xiàn)對(duì)指標(biāo)、跟蹤和日志的更深入分析,該流擴(kuò)展到整個(gè)網(wǎng)絡(luò)中的應(yīng)用程序的代碼級(jí)別。代碼被分析并存儲(chǔ)。
Grafana 的工程總監(jiān)Ryan Perry告訴 The New Stack,使用 Beyla,你正在更多地致力于分析,這與跟蹤密切相關(guān)。“分析可以告訴你你的代碼在特定時(shí)間段內(nèi)實(shí)際做了什么,將跟蹤跨度與分析數(shù)據(jù)聯(lián)系起來,”Perry 說。“例如,Beyla 可能會(huì)告訴你你的代碼運(yùn)行了七秒,而分析將分解這段時(shí)間在不同函數(shù)上花費(fèi)的情況。”
本文鏈接:http://www.www897cc.com/showinfo-26-91365-0.htmlOpenTelemetry并非可觀測(cè)性的“神奇按鈕”
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com