如何做網(wǎng)站的優(yōu)化網(wǎng)絡營銷好找工作嗎
應用可觀測性OpenTelemetry簡介
- OpenTelmetry遙測方案
- 可觀測性三支柱
- 日志 Logs
- 指標
- 跟蹤
- 什么是OpenTelemetry
- OpenTelemetry架構和組件
- OpenTelemetry與OpenCensus、OpenTracing是什么關系
OpenTelmetry遙測方案
可觀測性三支柱
日志 Logs
日志是特定事件在特定時間點發(fā)生的文本記錄。生成日志條目的觸發(fā)器是應用程序代碼的一部分,因此當執(zhí)行相關代碼時,系統(tǒng)會重復產(chǎn)生日志條目。日志條目記錄了事件發(fā)生的時間,并提供了一個載荷,包括描述事件性質、事件上下文以及其他后續(xù)分析可能有用的元數(shù)據(jù)。
根據(jù)日志的創(chuàng)建方式、使用的格式化規(guī)則以及自動化邏輯處理的難度,日志可以廣泛分為以下幾類:
- 無結構化日志:包括供人類處理的文本,可能不包含易于機器處理的元數(shù)據(jù)。通常被認為是記錄的最常見方式,不幸的是通常難以解析以進行分析。
- 結構化日志:包括以易于其他代碼解析的標準格式組織的數(shù)據(jù)(例如JSON)。它包括使查詢?nèi)罩靖菀?#xff08;尤其是過濾和分組)的附加元數(shù)據(jù)。
日志提供了有關應用程序行為的可靠且易于理解的信息源。開發(fā)人員在故障排除代碼并驗證其執(zhí)行時常依賴于日志。當故障位于整體應用程序的特定組件中時,此數(shù)據(jù)可能提供了識別系統(tǒng)故障和其他問題根本原因所需的細粒度信息,但它不一定足以理解故障在分布式系統(tǒng)中的起源以及實際產(chǎn)生的副作用。
指標
指標是與時間戳關聯(lián)的一系列數(shù)據(jù)點,這導致了“時間序列”通常被認為是“指標”的同義詞。數(shù)據(jù)點的值通常是數(shù)字,例如在某個時間段內(nèi)提供的請求數(shù)的計數(shù),但在某些監(jiān)控系統(tǒng)中,它也可以是字符串(例如,Prometheus的“INFO”指標)或布爾值。
為了減少存儲和處理長時間跨度內(nèi)的指標所需的計算資源量,通常慣例是“聚合”它們的值,例如將指標的粒度從每秒一個數(shù)據(jù)點減少到一分鐘或十分鐘內(nèi)的數(shù)據(jù)點的平均值、均值和(在某些情況下,百分位數(shù))。由于指標往往包含比日志更不敏感的數(shù)據(jù),因此基礎設施提供商和第三方服務更常見地提供有關他們代表用戶執(zhí)行的操作的指標,而不是日志。
跟蹤
跟蹤描述了請求在分布式系統(tǒng)中的整個路徑。隨著請求進入系統(tǒng),處理它們的組件創(chuàng)建跨度(spans),這些跨度記錄了操作,比如“接收請求XYZ”或“發(fā)出數(shù)據(jù)庫查詢ABC”,操作開始的時間點以及完成所花費的時間。
跨度根據(jù)它們的跟蹤標識符進行分組,并鏈接到它們的前身跨度,有效地創(chuàng)建了跨度的有向無環(huán)圖,展示了在分布式系統(tǒng)中如何進行請求處理。根據(jù)在跟蹤中收集的信息的細粒度程度,通??梢砸荒苛巳坏乜吹教幚硪粋€請求的錯誤和延遲從何處起源,以及它們?nèi)绾卧诜植际较到y(tǒng)中傳播??缍韧ǔ0ㄒ韵聰?shù)據(jù):
- 跟蹤標識符
- 跨度標識符
- 操作的名稱
- 開始和結束時間戳
- 以鍵值格式編碼的元數(shù)據(jù),包括有關基礎設施的信息(例如,哪個容器處理了此請求)等。
- 事件(例如,日志、異常和錯誤)
跟蹤的價值不僅限于故障排除單個請求。例如,通過匯總多個跟蹤中的數(shù)據(jù),可以生成關于速率、錯誤和持續(xù)時間(RED)等指標的數(shù)據(jù),這些指標是站點可靠性工程(SRE)實踐中的所謂“黃金信號”的重要組成部分,正如Google最初定義的那樣。
什么是OpenTelemetry
OpenTelemetry架構和組件