上篇介紹負責蒐集應用程式遙測數據的元件,這篇將介紹後續處理的原件 OTel Collector
+------------------------------------------------------+
| OpenTelemetry (OTEL) |
+------------------------------------------------------+
| |
| +-------------------------+ +---------------------+ |
| | Specifications | | Implementations | |
| +-------------------------+ +---------------------+ |
| | - OTel Specification | | - OTel SDKs | |
| | | | | |
| | - OTel Protocol | | - OTel Collector | |
| | | | | |
| | - Open Agent Management | | - OTel API | |
| | Protocol | | | |
| | | | | |
| | - OTel Semantic | | | |
| | Conventions | | | |
| +-------------------------+ +---------------------+ |
| |
+------------------------------------------------------+
傳輸可觀測性數據協定
開放遙測協定 (OTLP) 規格描述了遙測源、採集器等中間節點和遙測後端之間遙測資料的編碼、傳輸和交付機制
[name=open-telemetry/opentelemetry-proto]
OTLP 協定描述如何編碼和傳輸遙測數據,白話意思是可以在接收、處理或導出 OTEL 資料的任何服務上實現。每種語言 SDK 都提供一個 OTLP 匯出器,您可以將其配置為透過 OTLP 匯出資料。然後 OpenTelemetry SDK 將事件轉換為 OTLP 資料。
接收、處理和匯出遙測資料的方式
OTel Collector 是 OTel 重要核心元件之一,用於收集、轉換處理並發送遙測資數據,與供應商無關(vendor-agnostic)。也可依據團隊收集數據資料的需求進行採樣(sampling)設定。
OTel Collector 由以下組件組成
各組件搭配一起成為可觀測性管道(Observability Pipleline),可以讓使用者從不同來源 (例如OpenTelemetry SDK、代理或導出器) 收集遙測數據資料,並在收集資料過程中進行轉化加工處理,再將處理後的資料傳送到任何目的地 (destinations)。
OpenTelemetry 不負責儲存後端或呈現結果。如果需要儲存或可視化,您可以參考 Awesome OpenTelemetry 中的存儲解決方案。
另外提醒,OpenTelemetry 不提供儲存後端及呈現結果,
如果需要儲存或可視化,您可以參考 Awesome OpenTelemetry 中的存儲解決方案。
OpenTelemetry 提供了一種跨各種程式語言、平台和雲端供應商檢測、收集和匯出遙測資料的標準方法。這種標準化可確保在不同環境和系統中以一致的方式收集和報告遙測數據,減少整合上的成本並使其更易於使用,使用上也具備彈性可因不同需求來搭配不同的Receivers、Processors 及 Exporters。
另外可以參考 OpenTelemetry 生態系統,了解更多支援 OTel 的工具、追蹤器實作、實用程式和其他有用的項目。
通用數據定義方法
提供了一種定義如何在系統中的不同元件之間建構和交換資料的方法。透過使用語意約定,各種工具和服務可以一致地解釋和處理資料。白話就是定義了可觀測性資料的一組通用屬性。它們涵蓋了廣泛的領域,包括雲端資源、資料庫、異常和系統。
以上是 OTel 相關核心的元件介紹與分享,如果有任何疑問或想法,歡迎留言提出討論 !
What Are Semantic Conventions in OTEL?
A beginner’s guide to OpenTelemetry
第一張圖好酷...
大大看過真多可觀測性文章
努力追隨雷N大的腳步中 XDD
PS : 圖片是用 Bing AI 輸入關鍵字產生的喔 大大有空可以試試看