華律網(wǎng),通過觀測云大幅縮短故障定位時間
案例精彩導(dǎo)讀
成都華律網(wǎng)絡(luò)服務(wù)有限公司
簡稱「華律網(wǎng)」www.hualv.com,成立于 2004 年,深耕互聯(lián)網(wǎng) + 法律行業(yè) 18 年,是全國最大的一站式在線法律服務(wù)平臺。截至 2022 年 1 月,平臺當(dāng)前注冊用戶 1.6 億,注冊律師 40 萬,占全國律師總?cè)藬?shù)三分之二,注冊律所 1.5 萬家,新媒體粉絲超 2000 萬;日獨立用戶訪問量 1100 萬,日咨詢量 16.5 萬,累計咨詢服務(wù)人次達 4 億;優(yōu)質(zhì)法律知識內(nèi)容超 9 億條,年普法人次達 50 億;成立至今累計注冊企業(yè)數(shù)量達 400 萬左右,年注冊量 30 萬左右。
案例亮點
(1)大型門戶網(wǎng)站可觀測最佳實踐
(2)RUM + 容器監(jiān)控 + APM + 日志分析 + 可視化面板,全功能一體化可觀測體驗
(3)實時快速定位故障點
(4)SaaS 交付,按量計費,實現(xiàn)成本優(yōu)化
1.簡單介紹一下貴公司
成都華律網(wǎng)絡(luò)服務(wù)有限公司(簡稱華律網(wǎng))成立于 2004 年,深耕互聯(lián)網(wǎng) + 法律行業(yè) 18 年。依托「普法服務(wù)」「咨詢服務(wù)」「非訴法律服務(wù)」和「線下律師匹配服務(wù)」四大核心功能,為個人、企業(yè)和政府提供一站式法律服務(wù)。以「讓所有人享受到普惠、優(yōu)質(zhì)、高效的法律服務(wù)」為使命,致力于成為全球知名的一站式法律服務(wù)平臺。
截至 2022 年 1 月,平臺當(dāng)前注冊用戶 1.6 億,注冊律師 40 萬,占全國律師總?cè)藬?shù)三分之二,注冊律所 1.5 萬家,新媒體粉絲超 2000 萬;日獨立用戶訪問量 1100 萬,日咨詢量 16.5 萬,累計咨詢服務(wù)人次達4億;優(yōu)質(zhì)法律知識內(nèi)容超 9 億條,年普法人次達 50 億;成立至今累計注冊企業(yè)數(shù)量達 400 萬左右,年注冊量 30 萬左右。旗下?lián)碛腥覈艺J證的高新技術(shù)企業(yè),主要榮譽包括 2021 年種子期雛鷹企業(yè)首次認證, 2021 年省級瞪羚企業(yè)認證, 2019 年成都上規(guī)入統(tǒng)企業(yè), 2019 年高新區(qū)首批瞪羚企業(yè),中國電子商務(wù)行業(yè)最具影響力獎,移動互聯(lián)網(wǎng)行業(yè)最具投資價值獎等認證及獎項。目前為四川省互聯(lián)網(wǎng)行業(yè)聯(lián)合會成員,成都市互聯(lián)網(wǎng)界聯(lián)合會成員單位。
2.監(jiān)控平臺的建設(shè)思路是怎么樣的?
自華律網(wǎng) IT 業(yè)務(wù)系統(tǒng)建設(shè)開始,我們就一直在探索如何更高效的感知系統(tǒng)整體,做到對軟硬件各層級組件運行狀態(tài)的準(zhǔn)確把控。之前可觀測性這個概念在國內(nèi)并不成熟,出于理論基礎(chǔ)、技術(shù)成熟度、實施成本、團隊技術(shù)成長等方面的考慮,我們主要使用一些開源組件,例如 Prometheus + Grafana 等開源工具,對現(xiàn)有系統(tǒng)進行監(jiān)控和分析。監(jiān)控的維度基于我們整個業(yè)務(wù)平臺來做設(shè)計,但受限于工具本身的能力,實際只收集了 VM 和 Pod 級別的基礎(chǔ)指標(biāo),實現(xiàn)了部分指標(biāo)的監(jiān)控。

這樣監(jiān)控其實是相對簡陋的,在早期系統(tǒng)規(guī)模不大,應(yīng)用體系不是很復(fù)雜的條件下還算夠用。隨著華律網(wǎng)業(yè)務(wù)的持續(xù)擴張,用戶訪問規(guī)模的不斷擴大,應(yīng)用構(gòu)建方式也需要適應(yīng)業(yè)務(wù)高速的發(fā)展,逐步向容器化、微服務(wù)化遷移,如果繼續(xù)使用基礎(chǔ)監(jiān)控排查問題就有點捉襟見肘了。比如我們收到了客戶的故障反饋,只能通過工具先簡單地排查一下基礎(chǔ)設(shè)施資源的占用,看看 CPU / 內(nèi)存等硬指標(biāo)有沒有問題;如果沒有異常,再進一步排查云廠商的各項服務(wù)有沒有告警;如果還是沒有線索,就只能回到比較原始的故障分析方式——打日志 + 復(fù)現(xiàn)。
而在分布式微服務(wù)的語境下,先不討論能否重現(xiàn)故障,或是否能通過新增日志準(zhǔn)確捕獲這個故障,且日志打印剛好提供了足夠的診斷信息。我們首先需要解決的問題就是,識別出故障點在哪里,發(fā)生故障的是哪個服務(wù)?我們應(yīng)該為「誰」增加定位日志?
在故障發(fā)生時,無法有效定位故障點,一直是影響我們在線業(yè)務(wù)恢復(fù)及故障修復(fù)效率的最大痛點。針對這個問題,整個團隊也一直在持續(xù)探索新的解決方案。
3.怎么會關(guān)注到觀測云的?
在新的業(yè)務(wù)平臺整體監(jiān)控方案探索中,我們初步明確了所需監(jiān)控工具的幾個重點技術(shù)特征:
(1)監(jiān)控維度必須全面,具備在系統(tǒng)各個層級收集數(shù)據(jù)的能力,特別是應(yīng)用鏈路數(shù)據(jù),可以很好地補充故障發(fā)生時的各種信息;
(2)支持分布式微服務(wù)追蹤,這個也是我們現(xiàn)在在使用的業(yè)務(wù)架構(gòu);
(3)數(shù)據(jù)實時性高(及時發(fā)現(xiàn)問題),業(yè)務(wù)系統(tǒng)侵入?。ń档鸵氤杀荆?;
(4)如果可以的話,最好能自動整合指標(biāo)、自建日志和云原生服務(wù)的數(shù)據(jù),放在一個界面上大盤展示出來,或者至少在一個工具界面通過簡單的操作就可以看到所有信息。這樣就不需要在 Grafana 和云監(jiān)控的界面之間反復(fù)橫跳了,能夠提升一些效率。
其中,鏈路追蹤(APM)的部分相對復(fù)雜,也是我們技術(shù)方案選型工作的切入點。APM 不是一個新概念,市面上也有很多成熟的產(chǎn)品可以使用。由于我們后端服務(wù)是混合技術(shù)棧 Java + .NET ,對 .NET 的支持友好程度是一個比較重要的考慮點。
我們考察了很多方案,如開源的 SkyWalking 、Jaeger 、 Zipkin 以及一些商業(yè)方案等。除了 DataDog 的 dd-trace-agent 外,其他 APM 探針對 .NET 的支持都不太全面,而且有一定的開發(fā)工作量。因此,我們最理想的工具選型,要有不弱于 dd-trace-agent 探針的能力(或直接可以復(fù)用),來實現(xiàn)分布式全鏈路追蹤,還要具備上述提到的其他技術(shù)特征,來提升我們的整體監(jiān)控效能。觀測云就是在這樣的背景下進入了我們的視野。
4.觀測云是怎樣幫助您快速定位故障的?
在確定新的監(jiān)控平臺建設(shè)方向后我們就開始了對觀測云的試用和研究。首先從產(chǎn)品功能層面來講,除了傳統(tǒng)監(jiān)控層面的指標(biāo)、日志數(shù)據(jù)外,觀測云還支持 dd-trace-agent 的接入,可以實現(xiàn)應(yīng)用鏈路追蹤功能。再通過他們的前端插件,可以將網(wǎng)站和小程序的訪問情況收集下來。其次,收集到的所有數(shù)據(jù)都可以通過數(shù)據(jù)標(biāo)簽體系進行關(guān)聯(lián),在一套界面上展示所有的信息。
現(xiàn)在遇到問題時,比如我們發(fā)現(xiàn)用戶的一些請求比較緩慢,就可以直接在鏈路中定位到具體的位置了。這個位置可能是某個接口,某個云服務(wù)比如 Redis ,或者某個數(shù)據(jù)庫服務(wù)。以前加日志找問題來來回回可能要幾個小時,現(xiàn)在我們幾分鐘就可以定位到問題了。

而且觀測云提供了開箱即用的各種預(yù)制面板,我們可以快速地發(fā)現(xiàn)當(dāng)前有哪些服務(wù)是有問題的,哪些接口的響應(yīng)時間比較高,哪些接口經(jīng)常出錯。對問題處理效率提升很大。


這個效率的提升是基于業(yè)務(wù)系統(tǒng)全層面數(shù)據(jù)的實時收集能力實現(xiàn)的。觀測云展示的是故障發(fā)生時的數(shù)據(jù),幫助我們?nèi)媲逦亓私狻府?dāng)時」發(fā)生了什么,而不是「之后」再去嘗試拼接復(fù)現(xiàn)。要知道單從技術(shù)層面去復(fù)現(xiàn)某個問題有些時候是非常困難的,而擁有業(yè)務(wù)全層面數(shù)據(jù)采集能力,就可以很好地解決這個問題,所有的狀態(tài)信息都被有序有關(guān)聯(lián)的記錄下來了,等于我們有了一段段事故現(xiàn)場影像,避免無效地研發(fā)定位投入。
另外,對觀測云產(chǎn)品團隊的迭代效率印象也非常深刻。其實我們算是觀測云比較早期的用戶,非常早期的那種,早期到當(dāng)時的產(chǎn)品還不叫觀測云,也不支持 K8S 接入(笑)。數(shù)據(jù)源的部署也有一些不方便的地方。但是觀測云產(chǎn)品開發(fā)團隊的響應(yīng)速度很快,通過不斷的產(chǎn)品迭代,修復(fù)各種試用過程中的問題,實現(xiàn)用戶反饋的試用意見,開發(fā)新的功能來支持更加復(fù)雜的業(yè)務(wù)系統(tǒng)。到今天我們正式上線時,已經(jīng)成長為一個全功能平臺,并且還在不斷地發(fā)布更新來滿足更多的需求。
5.您對觀測云還有什么建議?
目前觀測云產(chǎn)品已經(jīng)引入到我們的生產(chǎn)環(huán)境中進行常態(tài)化使用,對于長期使用的產(chǎn)品我們也比較關(guān)注功能和成本的平衡。近期觀測云進行了一些計費策略的調(diào)整,這個非常好。觀測云可能是我們看到的國內(nèi)僅有的全 SaaS 化交付,且按量計費的可觀測工具,加上產(chǎn)品本身在持續(xù)優(yōu)化采集策略,我們現(xiàn)在能看到的數(shù)據(jù)更多了,但好像綜合使用成本反而更低了。希望后續(xù)能有更多的類似策略幫我們以最優(yōu)的成本使用各項觀測功能。
我們開發(fā)運維團隊近期在逐步探索將服務(wù)治理引入到華律網(wǎng)微服務(wù)體系中,希望觀測云在服務(wù)治理方向上能夠有更多的產(chǎn)品功能和最佳實踐提供出來。
作者|華律網(wǎng)運維技術(shù)專家 ——方志鵬
觀測云產(chǎn)品技術(shù)專家——張?zhí)?/p>
關(guān)于觀測云
觀測云( www.guance.com) ,新一代 SaaS 化全鏈路數(shù)據(jù)可觀測平臺,國內(nèi)首批獲得中國信通院頒發(fā)的「可觀測性平臺技術(shù)能力」最高級別「先進級」認證,實現(xiàn)統(tǒng)一采集、統(tǒng)一標(biāo)簽、統(tǒng)一存儲和統(tǒng)一界面,帶來全功能的一體化可觀測體驗。觀測云能全環(huán)境高基數(shù)采集數(shù)據(jù),支持多維度信息智能檢索分析,及提供強大的自定義可編程能力,使系統(tǒng)運行狀態(tài)盡在掌控,故障根因無所遁形。
為幫助廣大技術(shù)愛好者更好地了解全球技術(shù)趨勢、可觀測性最佳實踐、觀測云產(chǎn)品功能等前沿干貨,我們特別成立了觀測云官方社區(qū)交流群,為大家提供一個交流互動的平臺。還沒有入群的小伙伴,可以掃碼加微信入群,一起參與到我們的技術(shù)社群來!