日志易:可觀測性解決方案——觀察易(觀察日志怎么弄)
來源:“鑫智獎”第四屆金融數(shù)據(jù)智能優(yōu)秀解決方案評選
獲獎單位:北京優(yōu)特捷信息技術有限公司
榮獲獎項:運維創(chuàng)新優(yōu)秀解決方案
一、解決方案簡介
觀察易是日志易基于自研高性能數(shù)據(jù)搜索分析引擎Beaver和低代碼編程語言SPL(Search Processing Language)自主研發(fā)的針對單體應用架構、分布式應用架構的可觀測性平臺,用于收集、分析、聚合、可視化來自于各類應用運維數(shù)據(jù),具備鏈路追蹤、性能分析、日志關聯(lián)、指標探索以及擴展化運維場景的定制能力。它功能強大,具備對Tracing、Metric以及Logging的統(tǒng)一管理以及關聯(lián)分析等,無論從應用的觀測、監(jiān)控還是運維排障方面來看,皆具備較強的能力,觀察易關注的重點是“可觀測性、監(jiān)控能力以及故障排查效率”。
二、應用場景痛點簡介
簡單地說,可觀測性就是從應用系統(tǒng)中收集盡可能多的遙測數(shù)據(jù),以便您可以調(diào)查和解決新的復雜問題。目標是使您的團隊能夠開始主動觀察系統(tǒng),以便您能夠:在影響客戶之前解決問題,安全地進行實驗并實施優(yōu)化,更好地管理業(yè)務風險。我們可以將它視為系統(tǒng)的一個屬性,與功能性、安全性相似。
可觀測性是由日志、指標和鏈路追蹤三大支柱去構建的,即遙測數(shù)據(jù)可以精簡為日志,指標和鏈路追蹤。
日志(Logging):日志展現(xiàn)的是應用運行而產(chǎn)生的事件或者程序在執(zhí)行的過程中產(chǎn)生的記錄,日志可以詳細解釋系統(tǒng)的運行狀態(tài),但是存儲和查詢需要消耗大量的資源。
指標(Metrics):指標是一種聚合數(shù)值,其存儲空間小,便于觀察系統(tǒng)的狀態(tài)和趨勢,但對于問題定位缺乏細節(jié)展示。這個時候使用多維數(shù)據(jù)結(jié)構能增強對于細節(jié)的表現(xiàn)力。例如統(tǒng)計一個服務的的平均耗時、請求量等。
鏈路跟蹤(Tracing):盡管日志記錄了各個事件的細節(jié),可在分布式系統(tǒng)中,日志仍舊存在不足之處。日志記錄的事件是孤立的,但是在實際的分布式系統(tǒng)中,不同組件中發(fā)生的事件往往存在因果關系。鏈路跟蹤解決了這一問題,通過SpanID等標記可重新構造出事件的完整事件鏈路以及因果關系。技術人員可以借此了解網(wǎng)格內(nèi)服務的依賴和調(diào)用流程,構建整個網(wǎng)格的服務拓撲并輕松分析出請求中出現(xiàn)的異常點。
三種形式的組合使用將會產(chǎn)生豐富的可觀測數(shù)據(jù)。
三、解決方案亮點介紹
技術架構圖
觀察易能夠從業(yè)務-服務-接口-設備四層維度對應用系統(tǒng)狀態(tài)進行分析。
1、產(chǎn)品優(yōu)勢
國產(chǎn)自研,安全可控
日志易是國家級專精特新“小巨人”企業(yè),已獲得14項技術發(fā)明專利、3項外觀專利,一直專注于機器大數(shù)據(jù)平臺、服務和解決方案的開發(fā),致力于幫助各行業(yè)用戶挖掘和利用機器數(shù)據(jù)價值,提升數(shù)字化運營能力,輕松應對IT及業(yè)務挑戰(zhàn)。
日志易自研的低代碼編程語言SPL(Search Processing Language)已實現(xiàn)了300多個函數(shù)及指令,全面覆蓋日常運維分析和安全分析工作需求,對接了后臺多種機器學習算法,實現(xiàn)了智能運維AIOps。此外,日志易還研發(fā)出了國內(nèi)首個高性能高可用性的日志搜索引擎Beaver,每天可處理PB級海量日志,相比國外通用開源搜索引擎來說,Beaver性能提升了10倍且硬件成本降低了50%。
信創(chuàng)生態(tài),行業(yè)引領
日志易于2020年加入了信息技術應用創(chuàng)新工作委員會,2021年成為了信息技術應用創(chuàng)新工作委員會WG24大數(shù)據(jù)工作組副組長單位,已成為華為鯤鵬展翅伙伴計劃ISV級認證伙伴,完成了多家信創(chuàng)相關產(chǎn)品兼容性測試并獲得互認證,并受邀參與編寫國內(nèi)首個《企業(yè)級AIOps實施建議白皮書》與中國信通院牽頭制定的智能運維(AIOps)能力成熟度模型系列標準。2021年4月,日志易出版了首本由國內(nèi)日志分析專家撰寫的專業(yè)書籍《日志管理與分析》,已經(jīng)成為該領域的佼佼者。
數(shù)據(jù)接入模型
觀察易分為數(shù)據(jù)接入和功能使用兩部分。
觀察易可作為日志易平臺上的擴展應用,支持接入全類型日志以便定位故障原因,但是對于接入的鏈路追蹤日志、性能指標需要滿足數(shù)據(jù)模型。只有滿足數(shù)據(jù)模型的數(shù)據(jù)接入觀察易,才可以直接在頁面上使用觀察易提供的功能。
鏈路追蹤和性能指標,如來自zipkin、jaeger、prometheus的數(shù)據(jù),經(jīng)處理后需要使特定的字段寫入指定的索引,以便在觀察易頁面使用。詳細信息如下圖所示。
2.應用場景
運維監(jiān)控
在“業(yè)務至上”的互聯(lián)網(wǎng)時代,DevOps需要持續(xù)監(jiān)控業(yè)務狀態(tài),當故障發(fā)生時需要快速找到根因并進行修復。觀察易能夠從業(yè)務維度對業(yè)務的平均耗時、請求量、錯誤數(shù)、成功率四個黃金指標進行監(jiān)控,也可以從服務和接口維度對業(yè)務的整體狀態(tài)進行分析。另外,觀察易也提供和業(yè)務無關的服務監(jiān)控、接口分析和設備監(jiān)控,實現(xiàn)更全面的系統(tǒng)可觀測性。
鏈路追蹤
伴隨企業(yè)IT由傳統(tǒng)架構向分布式微服務架構轉(zhuǎn)型,復雜單體應用被拆分為多個輕量級服務。由于服務間的獨立性,一筆業(yè)務會涉及到多個微服務系統(tǒng)。觀察易可對接trace日志,實現(xiàn)業(yè)務鏈路追蹤,通過觀察易的拓撲圖、歷史回溯和指標趨勢圖了解業(yè)務詳情,快速定位故障,讓IT運維人員更準確、高效地掌握微服務環(huán)境下業(yè)務的運行狀態(tài)。
指標探索
從業(yè)務、服務、設備角度來說,側(cè)重的是黃金指標可觀測性,如果需要關聯(lián)黃金指標對比觀察或需要關注黃金指標以外的其他指標時,運維人員可以使用觀察易的指標探索功能對時序數(shù)據(jù)進行單指標多維度(平均值、最大值、最小值等)或多指標多維度查詢、分析并實現(xiàn)可視化。
故障定位
觀察易能夠提供標準的起點或圖表來幫助運維人員查找問題,分別從業(yè)務、服務、接口、設備的概覽追蹤到其詳情,進而結(jié)合調(diào)用鏈的span信息或其他日志信息定位到故障原因。
3.功能介紹
業(yè)務:從業(yè)務維度梳理系統(tǒng)當前狀態(tài),展示業(yè)務概況、業(yè)務詳情,用戶可以通過觀察到的異常趨勢深入探究業(yè)務詳情,并通過業(yè)務拓撲圖發(fā)現(xiàn)調(diào)用服務之間的關系與具體狀態(tài)。業(yè)務拓撲同時支持歷史回溯、服務詳情、接詳情、查看具體異常請求等功能,幫助用戶快速完成溯源分析。
服務:從服務維度梳理系統(tǒng)當前狀態(tài),從指標趨勢和接口分析展示服務概況、服務詳情,同時支持下鉆到關聯(lián)設備及調(diào)用鏈信息。
設備:蜂窩狀視圖讓設備關鍵信息一目了然,點擊詳情進一步了解設備的相關信息、性能指標和相關服務。
調(diào)用鏈:提供鏈路追蹤查詢功能,用戶可以使用業(yè)務,服務,接口,Local IP,Remote IP,traceID,耗時,請求結(jié)果等多種字段對調(diào)用鏈進行過濾。調(diào)用鏈詳情展示每個請求的耗時,并能快速跳轉(zhuǎn)至具體日志。
指標探索:用戶無需使用SPL編程語言,利用分析區(qū)即可完成對指標時序數(shù)據(jù)的分析與可視化,支持聚合、時移及拆分,獲得更深入的分析圖表。
1.業(yè)務
1)業(yè)務總覽
業(yè)務總覽默認展示最近10分鐘的業(yè)務概況,用戶可以自定義時間范圍,查看不同時間的業(yè)務概況,如業(yè)務名稱,成功率,請求量,錯誤數(shù),請求耗時等。
業(yè)務查詢支持索引動態(tài)查詢,也支持手動輸入。用戶可以通過’曲線圖'查看時間范圍內(nèi)的業(yè)務趨勢和最后值。
2)業(yè)務詳情
業(yè)務詳情包括業(yè)務拓撲圖、拓撲圖播放、業(yè)務指標趨勢圖、服務指標趨勢圖、接口指標趨勢圖等。
業(yè)務拓撲圖展示時間范圍內(nèi)業(yè)務調(diào)用的服務、服務之間的關系以及服務狀態(tài),默認展示服務層。當服務層節(jié)點異常時,我們可以通過左下角的數(shù)字(數(shù)字表示當前層級的節(jié)點數(shù))切換到接口層,查看接口狀態(tài)和指標趨勢。
節(jié)點使用顏色區(qū)分表示健康度,展示該節(jié)點狀態(tài),支持用戶自定義節(jié)點狀態(tài)和成功率的對應關系。
歷史回溯:
歷史回溯提供更快捷的方式,播放展示不同時刻的具體鏈路狀態(tài)。用戶可以設定播放速度,也可以展示任意指定時刻的具體鏈路狀態(tài)。
業(yè)務指標:
業(yè)務指標展示用戶選定時間范圍內(nèi)的業(yè)務趨勢。
節(jié)點詳情:
節(jié)點詳情展示節(jié)點指標在選定時間范圍趨勢圖。
2.異常請求
異常的定義來自配置→異常關鍵字。異常請求通過表格形式按時間降序展示選定時間范圍內(nèi)的所有異常請求。點擊traceID可查看該請求詳情。
3.調(diào)用鏈
調(diào)用鏈即鏈路追蹤tracing,調(diào)用鏈頁面提供鏈路追蹤查詢功能,支持使用業(yè)務,服務,接口,Local IP,Remote IP,traceID,耗時,請求結(jié)果對tracing進行過濾。過濾項下拉框來自對接數(shù)據(jù)的索引動態(tài)查詢,也支持手動輸入。支持點擊traceID查看該tracing的詳細信息。
1)調(diào)用鏈詳情
調(diào)用鏈詳情展示單個tracing的信息,同時支持進一步查看日志原文,跳轉(zhuǎn)至搜索頁。
4.服務
從服務維度梳理系統(tǒng)狀態(tài)。包含服務總覽和服務詳情。
1)服務總覽
服務總覽默認展示最近10分鐘的服務概況,支持自定義時間范圍,查看不同時間的業(yè)務概況,卡片式展示服務信息,如服務名稱,成功率,請求量,錯誤數(shù),請求耗時等。支持過濾操作。
2)服務詳情
服務詳情包括服務指標趨勢圖:請求量,錯誤數(shù),平均耗時,成功率。支持滑選功能。用戶可以選擇查看某個業(yè)務的服務詳情,也可以查看全部業(yè)務的服務詳情。
服務詳情還包括接口分析,默認展示’平均響應時間最慢TOP10',還可以選擇’請求次數(shù)最多TOP10','錯誤次數(shù)最多TOP10','成功率最低TOP10',當選擇全部接口時,可以搜索某個接口名。
同時服務頁面可跳轉(zhuǎn)至關聯(lián)的設備、日志及調(diào)用鏈信息頁。
5.設備
設備信息由蜂窩圖形式構建,不同的顏色代表該設備的健康狀態(tài)。默認展示最近10分鐘的設備使用率的最新值,支持對設備及字段信息過濾篩選,或根據(jù)分組字段對設備進行分組。設備類型支持:Hosts和Docker Containers,不同的設備類型對應的展示指標不同。
單擊設備卡片時,展示設備詳情:相關信息,相關指標和相關服務。
相關信息展示設備tag值、平均cpu使用率、平均內(nèi)存使用率。用戶可以點擊"查看相關日志"跳轉(zhuǎn)至搜索頁面查看更多信息。
相關指標展示該設備的性能指標,相關服務展示該設備上運行的服務信息。
6.指標探索
在指標探索頁面用戶無需使用spl檢索語句即可對o11y_metrics索引的時序數(shù)據(jù)進行分析和可視化,僅僅需要選擇數(shù)據(jù)就可以創(chuàng)建交互式圖表,使用聚合、拆分、時移和過濾器深入分析數(shù)據(jù)。指標探索幫助用戶快速識別數(shù)據(jù)中的異常。
指標探索頁面包含三個區(qū)域。左側(cè)的"數(shù)據(jù)"區(qū)顯示了可用于分析的所有數(shù)據(jù)源。中間的"數(shù)據(jù)展示"區(qū)是您看到圖表表示的數(shù)據(jù)的地方。右側(cè)的“分析”區(qū)列出了可以應用于數(shù)據(jù)的聚合和分析功能。
1)圖表與分析
指標探索頁支持用戶創(chuàng)建一個新圖表或向現(xiàn)有圖表添加數(shù)據(jù)。每個圖表都包含基于至少一項匯總的一個或多個時間序列。將鼠標懸停在圖表上的任意點可以查看相應的值。支持多個數(shù)據(jù)可以在同一個圖表中展示。
在"分析"區(qū)配置分析功能和操作,用戶借此從圖表中獲得洞察力。所有分析功能都會在后臺生成SPL,可以點擊圖表中的"在搜索中打開"圖標查看對應的spl。
聚合
圖標展示中的圖表包含基于匯總數(shù)據(jù)的時間序列。為了計算聚合,將相同近似時間范圍內(nèi)的數(shù)據(jù)點分類為存儲桶。匯總是根據(jù)同一存儲桶中的數(shù)據(jù)點計算得出的。存儲桶大小或跨度將根據(jù)用戶指定的時間范圍自動配置。增加時間范圍會導致跨度自動增加。
指標探索頁支持向圖表添加多個時間序列,以查看數(shù)據(jù)的不同匯總。用戶可以為某一個數(shù)據(jù)選擇avg(默認聚合方式)、max、min、sum、count等多種聚合方式。
拆分
指標探索頁支持按維度拆分時間序列,以查看每個維度值的單獨時間序列。按維度拆分時間序列會顯示所選時間范圍內(nèi)的維度值。
時移
通過改變選取時間范圍來對比數(shù)據(jù)隨時間的變化情況。
實現(xiàn)價值
多維度服務分析
從指標趨勢和接口分析展示服務信息;支持下鉆到關聯(lián)設備及調(diào)用鏈信息。
全局設備總覽
設備關鍵信息采用蜂窩狀視圖展示,性能指標和相關服務一目了然。
多功能指標探索
完成對指標時序數(shù)據(jù)的分析與可視化;支持聚合、時移及拆分。
實時業(yè)務監(jiān)控
通過異常趨勢深入探究業(yè)務詳情;憑借業(yè)務拓撲圖發(fā)現(xiàn)服務之間的調(diào)用關系與具體狀態(tài)。
鏈路追蹤查詢
通過多種字段對調(diào)用鏈進行過濾查詢;實時展示每個請求的耗時并快速跳轉(zhuǎn)至具體日志。
四、客戶評價
日志易的觀察易在聚合時可以細化到節(jié)點級別。集群或微服務往往都是分布部署的,觀察易拓撲圖能夠顯示3層,每層展示的顆粒度都可配置。例如我們,第一層是業(yè)務系統(tǒng),第二層是各模塊集群,第三層就是模塊節(jié)點,可以自定義設置層次,不斷放大。
——某大型股份制銀行IT負責人
使用觀察易,數(shù)據(jù)治理的問題能夠一起解決,大部分不需要修改日志格式。我們引入了觀察易數(shù)據(jù)模型,只需要接入鏈路日志,然后在日志易數(shù)據(jù)工廠進行重命名和聚合等操作,即可完成數(shù)據(jù)接入,方便快捷。一則數(shù)據(jù)工廠支持很多span相關的算子,幫助梳理鏈路;二則數(shù)據(jù)工廠可以實現(xiàn)大數(shù)據(jù)量的實時處理,加快聚合得出指標的進程。
——某大型城商行IT負責人
更多金融科技案例和金融數(shù)據(jù)智能優(yōu)秀解決方案,請登錄數(shù)字金融創(chuàng)新知識服務平臺-金科創(chuàng)新社官網(wǎng)案例庫、選型庫查看。