全鏈路觀測(cè)平臺(tái)設(shè)計(jì)點(diǎn)歸納
引言
全鏈路觀測(cè)平臺(tái)設(shè)計(jì)離不開基礎(chǔ)數(shù)據(jù)的采集、提煉和呈現(xiàn)。本文就基礎(chǔ)數(shù)據(jù)日志、指標(biāo)、鏈路的采集原理進(jìn)行梳理,如何將其關(guān)聯(lián)最終提供輔助決策價(jià)值提點(diǎn)歸納。
一、數(shù)據(jù)采集
1.日志架構(gòu)簡(jiǎn)圖
統(tǒng)一日志: 標(biāo)準(zhǔn)化日志格式、鏈路ID透?jìng)?、自定義檢索標(biāo)識(shí)
日志類型: 應(yīng)用日志、中間件日志(RPC框架、消息、緩存、存儲(chǔ)等)、網(wǎng)關(guān)日志、終端日志
收集策略: 例如根據(jù)IP、APP、文件等靈活管控,不同日志分類管理
數(shù)據(jù)清洗: 清洗重復(fù)非標(biāo)準(zhǔn)數(shù)據(jù)、重復(fù)數(shù)據(jù)、聚合高質(zhì)量數(shù)據(jù)
存儲(chǔ)數(shù)據(jù): 區(qū)分哪些數(shù)據(jù)適合ES、哪些數(shù)據(jù)適合ClickHouse、哪些數(shù)據(jù)適合時(shí)序庫(kù)
性能成本: 延遲問題、查詢性能、存儲(chǔ)成本
小結(jié): 通過標(biāo)準(zhǔn)化的日志格式,多樣化的收集策略,清洗成高質(zhì)量數(shù)據(jù)為根因定位提供基礎(chǔ)保障。
2.鏈路架構(gòu)簡(jiǎn)圖
采樣策略
- 固定采樣率:保持固定采樣的頻率
- 最低采樣率:過低流量保證最低的采樣率
- 自適應(yīng)采樣率:根據(jù)流量自動(dòng)適應(yīng)采樣率
- 全部采樣率:對(duì)應(yīng)特高優(yōu)先流量100%采樣
- 染色采樣:對(duì)于染色打標(biāo)的請(qǐng)求100%采樣
- 應(yīng)急采樣:請(qǐng)求傳遞過程中檢測(cè)到錯(cuò)誤或者異常,強(qiáng)制將該請(qǐng)求采樣
動(dòng)態(tài)設(shè)置
- 采樣率采樣策略動(dòng)態(tài)調(diào)整
- 自殺熔斷保護(hù) 不允許過度占用資源影響業(yè)務(wù)
小結(jié): 鏈路采集和分析關(guān)鍵的點(diǎn)在于如何提供靈活的采樣策略,將核心鏈路、異常鏈路能實(shí)現(xiàn)高質(zhì)量采集。
二、數(shù)據(jù)關(guān)聯(lián)
1.橫向關(guān)聯(lián)
橫向關(guān)聯(lián):應(yīng)用為維度通過調(diào)用關(guān)系將上下游關(guān)聯(lián),包括經(jīng)過的網(wǎng)關(guān)、緩存(Redis等)、消息(RocketMQ、Kafka等)、存儲(chǔ)資源(MySQL、Hbase、Mongo、ES等)。
指標(biāo)(metrics):監(jiān)控變化趨勢(shì)以及基于趨勢(shì)變化告警 如Micrometer,Prometheus格式指標(biāo)數(shù)據(jù)的錯(cuò)誤率變化
鏈路(Tracing): 微服務(wù)記錄上下游服務(wù)調(diào)用與耗時(shí),基于OpenTracing 和 OpenTelemetry 規(guī)范,例如 Jaeger
日志(Logging):日志采集,通過日志詳細(xì)問題溯源
小結(jié): 通過Tracing將Metrics和Logging進(jìn)行關(guān)聯(lián),當(dāng)指標(biāo)波動(dòng)觸發(fā)告警能否智能關(guān)聯(lián)的tracing,尋根通過Logging錯(cuò)誤日志找出根因,為業(yè)務(wù)提供輔助決策。
2.縱向關(guān)聯(lián)
垂直關(guān)聯(lián):應(yīng)用維度包含依賴的容器、機(jī)器、CPU、帶寬、磁盤、內(nèi)存、消息資源(主題和消費(fèi)組、集群)、緩存資源、數(shù)據(jù)庫(kù)資源(表與實(shí)例等)、搜索資源(索引等)指標(biāo)關(guān)聯(lián)一站式展現(xiàn)。
三、輔助決策
1.數(shù)據(jù)質(zhì)量
指標(biāo)埋點(diǎn)覆蓋度
鏈路采樣策略的多樣性
日志清洗與提煉
2.告警質(zhì)量
告警信息能包含從指標(biāo)到鏈路以及日志的清晰關(guān)聯(lián)與日志信息,提高決策能力
3.分析能力
沉淀問題分析的最佳實(shí)踐庫(kù),將其自動(dòng)化分析提升定位能力
4.自愈能力
基于分析能力,沉淀自愈策略
自愈策略的靈活配置
5.性能與穩(wěn)定性
采集延遲、計(jì)算能力、查詢性能
可視化觀測(cè)平臺(tái)自身的穩(wěn)定性建設(shè)
6.可視化能力
可觀測(cè)一站式
豐富圖表與報(bào)表
7.預(yù)測(cè)能力
基于歷史數(shù)據(jù)沉淀算法模型預(yù)測(cè)未來可能發(fā)生的問題