系列文章
- Grafana 系列文章
概述
如前文 Grafana 系列 - 統(tǒng)一展示 -1- 開(kāi)篇所述, Grafana 可以了解所有相關(guān)的數(shù)據(jù)--以及它們之間的關(guān)系--對(duì)于盡快根治事件和確定意外系統(tǒng)行為的真正來(lái)源非常重要。Grafana 允許團(tuán)隊(duì)在一個(gè)地方對(duì)所有的數(shù)據(jù)進(jìn)行無(wú)縫的可視化和跳轉(zhuǎn)。
最典型的就是 Grafana Labs 的 LGTM 技術(shù)棧,包括:
- Loki(Logging)
- Grafana(可視化)
- Tempo(Tracing)
- Mimir(Metrics)
通過(guò)如下的技術(shù)細(xì)節(jié),可以實(shí)現(xiàn) Logging、Tracing、Metrics 的無(wú)縫可視化和跳轉(zhuǎn):
- Metrics -> Logs: 基于服務(wù)發(fā)現(xiàn)和統(tǒng)一 labels
- Logs -> Metrics: 基于 LogQL 提取 Metric 指標(biāo)
- Logs -> Traces: 基于衍生字段 (fields) 或自動(dòng)化的日志
- Traces -> Logs: 基于 labels
- Traces -> Metrics: 基于來(lái)自 spans 的 Metric 指標(biāo)
- Metrics -> Traces: 基于 Prometheus 的 Exemplars.
具體如下圖:
即使沒(méi)有采用 Grafana Labs 的解決方案,也仍然能實(shí)現(xiàn)一定程度的無(wú)縫跳轉(zhuǎn)。
如:
- Logging 使用 EFK
- Tracing 使用 Jaeger
如果日志中也包括 trace_id
, Name 至少可以通過(guò) trace_id
, 實(shí)現(xiàn) Logs -> Traces 的無(wú)縫跳轉(zhuǎn)。
??Notes:
前提是: 日志中包括
trace_id
相關(guān)字段.
當(dāng)然, 日志中就包含trace_id
字段, 屬于開(kāi)發(fā)對(duì)日志格式規(guī)劃地比較好了. 這使得運(yùn)維側(cè)配置跳轉(zhuǎn)邏輯簡(jiǎn)單了很多.
更多情況下, 是要結(jié)合cluster
namespace
app
pod
等字段/label 進(jìn)行查詢. (而非直接通過(guò)trace_id
直接定位.)
實(shí)戰(zhàn) Logs(ElasticSearch) To Traces(Jaeger)
??Notes:
實(shí)戰(zhàn)場(chǎng)景: 針對(duì)報(bào)錯(cuò)日志, 定位到出錯(cuò)的 Trace.
首先, 更新 ES 數(shù)據(jù)源配置, 增加 Data links 相關(guān)配置:
- Field:
trace_id
(根據(jù)實(shí)際情況配置, 也可能是traceId
等) - Internal link: ??, 并選擇一個(gè) Trace(Jaeger) 數(shù)據(jù)源
- Query:
${__value.raw}
之后, 可以通過(guò)ES 日志快速搜索儀表板, 篩選出ERROR
日志, 點(diǎn)擊展開(kāi) details, 會(huì)發(fā)現(xiàn) trace_id
會(huì)帶一個(gè)跳轉(zhuǎn)鏈接, 如下圖:
點(diǎn)擊后, 會(huì)直接跳轉(zhuǎn)到 Explore -> Jaeger 頁(yè)面, 并帶有出錯(cuò)的 trace_id
, 同時(shí)顯示鏈路拓?fù)浜?trace 瀑布圖, 如下圖:
??????
總結(jié)
至此, 我們完成了一個(gè)非常簡(jiǎn)單的, 從 Logs(ElasticSearch) 到 Trace(Jaeger) 的單向跳轉(zhuǎn). 但已經(jīng)會(huì)為我們分析問(wèn)題提供較大的便利了.
如果需要實(shí)現(xiàn) Metrics, Logs, Traces 三者的雙向跳轉(zhuǎn), 那么在這三者的解決方案需要是特定的方案, 另外這三者的數(shù)據(jù)源、Dashboard 和 Query 中都需要有更多精細(xì)的配置。包括不限于:
- 上文提到的三者之間的聯(lián)動(dòng)配置
- 各個(gè)數(shù)據(jù)源上配置 Data link、Derived fields、Exemplars、Trace to logs、Trace to Metrics 等
- 在 Dashboard 上添加 Text 等 Panel,并結(jié)合 Variable 用于更友好地跳轉(zhuǎn)
- 在 Panel 配置 panel link 用于更友好地跳轉(zhuǎn)
- ...
以此拋磚引玉,希望讀者可以做出更精美、實(shí)用的監(jiān)控統(tǒng)一展示和無(wú)縫跳轉(zhuǎn)方案。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-482233.html
三人行, 必有我?guī)? 知識(shí)共享, 天下為公. 本文由東風(fēng)微鳴技術(shù)博客 EWhisper.cn 編寫(xiě).文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-482233.html
到了這里,關(guān)于Grafana系列-統(tǒng)一展示-11-Logs Traces無(wú)縫跳轉(zhuǎn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!