上海全城封控已經(jīng)接近一個(gè)月了。不過我屋子里因?yàn)楹髞砀鞣N買和發(fā)的東西夠多,以至于現(xiàn)在已經(jīng)從擔(dān)心沒飯吃的階段演進(jìn)到人追著食物變質(zhì)速度在跑著吃的階段了……
最近在對(duì)監(jiān)控告警系統(tǒng)的架構(gòu)設(shè)計(jì)進(jìn)行調(diào)研度硝。今天中午做飯的時(shí)候,突然有個(gè)腦洞:為什么告警系統(tǒng)在展示時(shí)——不論是實(shí)時(shí)告警還是歷史告警——不能在每條告警后面加一個(gè)按鈕,叫「一鍵Google」呢(狗頭)盗舰。
說實(shí)話,這個(gè)想法一方面是因?yàn)樘焯炜紤]監(jiān)控告警系統(tǒng)設(shè)計(jì)一些要素桂躏,另一方面主要也是源于钻趋,這幾天有個(gè)朋友遇到了幾個(gè)運(yùn)維的問題,晚上打電話來問解決方案剂习。其實(shí)并不是說問題有多復(fù)雜蛮位,只不過因?yàn)檫\(yùn)維人員的經(jīng)驗(yàn)之中较沪,沒有遇到過這個(gè)問題,然后在看到一些無厘頭的報(bào)錯(cuò)的時(shí)候失仁,可能一時(shí)間不知道該從哪里下手尸曼。
這種情況也很正常,因?yàn)橛械臅r(shí)候我們第一時(shí)間看到的報(bào)錯(cuò)萄焦,一般都是開發(fā)人員通過程序返回給前端的報(bào)錯(cuò)控轿,而真正的報(bào)錯(cuò)是不會(huì)直接展示給用戶的。這在2C的系統(tǒng)上還是尤為常見的拂封,畢竟一方面非專業(yè)用戶看不懂茬射,如果直接將異常拋出給用戶,用戶會(huì)一頭霧水冒签;另一方面由于網(wǎng)絡(luò)安全的目的躲株,如果出現(xiàn)像黑帽子通過注入的方式故意引起系統(tǒng)異常從而通過錯(cuò)誤返回來做針對(duì)性攻擊,那么直接拋出異常其實(shí)就是白給镣衡。
不過霜定,由于監(jiān)控告警平臺(tái)本身使用者都是專業(yè)用戶,且都是內(nèi)部自己人廊鸥,因此監(jiān)控告警平臺(tái)的信息望浩,理應(yīng)會(huì)將系統(tǒng)資源、中間件惰说、數(shù)據(jù)庫或者容器編排相關(guān)的結(jié)構(gòu)化非結(jié)構(gòu)化日志信息上收集中磨德,形成一個(gè)很龐大的數(shù)據(jù)體系,通過DevOps平臺(tái)開發(fā)者的邏輯設(shè)計(jì)吆视,展示給運(yùn)維人員典挑,使他們能夠在第一時(shí)間看到告警及其詳細(xì)異常信息。
那么啦吧,其實(shí)如果說在前端看到異常報(bào)錯(cuò)之后您觉,根據(jù)時(shí)間點(diǎn)和系統(tǒng)對(duì)應(yīng)到監(jiān)控告警平臺(tái)查看對(duì)應(yīng)的告警信息,然后再做處理授滓,就正常能解決事件了琳水。這個(gè)邏輯很簡單,也很直接般堆。
然而在孝,假如運(yùn)維人員再看到告警信息時(shí)仍然無法用“運(yùn)維人員經(jīng)驗(yàn)”去解決的時(shí)候呢?
這時(shí)淮摔,運(yùn)維人員一般會(huì)干兩件事:
第一:打開搜索引擎私沮,按拋出的異常來搜索看是否有人分享解決方案;
第二:詢問有經(jīng)驗(yàn)或者更資深的人員和橙。
不過一般情況下仔燕,由于人性的使然造垛,對(duì)于這兩個(gè)方案,一般都是串行去操作的涨享。因?yàn)楫吘棺约耗芙鉀Q的筋搏,一般就不會(huì)麻煩人了嘛仆百。
而我這個(gè)問題的提出厕隧,其實(shí)解決的痛點(diǎn)就是這個(gè)人性的弱點(diǎn):可能你在搜索引擎搜索的時(shí)候,搜索的并不是真正的錯(cuò)誤俄周。
這個(gè)時(shí)候吁讨,如果監(jiān)控告警平臺(tái)增加了「一鍵Google」的功能,那么就是相當(dāng)于平臺(tái)告訴運(yùn)維人員:錯(cuò)誤就是這個(gè)峦朗,按圖索驥去吧建丧。
而這個(gè)功能的思路呢,最簡單的方案就是波势,在點(diǎn)按按鈕的時(shí)候翎朱,直接去搜索這條異常日志的信息。當(dāng)然搜索源可以是Google也可以是內(nèi)部知識(shí)庫尺铣。
再進(jìn)化一點(diǎn)就是通過NLP可以學(xué)習(xí)到該日志最主要的關(guān)鍵詞拴曲。
再進(jìn)化一點(diǎn)就是可以關(guān)聯(lián)各系統(tǒng)找到根因日志的最主要關(guān)鍵詞。
說到這可能有人就覺得好笑了:都拿來用NLP和根因分析了凛忿,為啥不直接上AIOps澈灼?
咋說呢,我一直有個(gè)觀點(diǎn)是:AI在運(yùn)維上的使用店溢,目前還是只能在簡單的自愈處理和告警輔助決策上能夠做好叁熔,真正這個(gè)事件是否能夠處理好,仍然還是需要人去最終定奪的床牧。
因?yàn)檫\(yùn)維不像其他領(lǐng)域AI的應(yīng)用有容錯(cuò)性荣回,像人臉識(shí)別有問題你再試一次就好了,特效換臉覺得場(chǎng)景不好你再拍一次就好了戈咳。但是運(yùn)維本身這個(gè)工作驹马,只有恢復(fù)正常這一種解決方案。也就是要近乎100%的故障恢復(fù)成功率除秀。這種活如果給AI糯累,尤其是NLP目前是幾個(gè)機(jī)器學(xué)習(xí)領(lǐng)域發(fā)展較為緩慢的一個(gè)了,它的準(zhǔn)確率一直也無法達(dá)到運(yùn)維的容錯(cuò)程度册踩。那運(yùn)維這個(gè)活泳姐,可能是自己給自己挖坑了。
所以暂吉,在這個(gè)分析研判的思路上胖秒,我覺得倒不如將這種輔助決策缎患,通過一個(gè)方便運(yùn)維人員去查找問題的功能展示,更實(shí)在一點(diǎn)阎肝。
當(dāng)然挤渔,我也并不完全對(duì)AIOps持否定態(tài)度,畢竟準(zhǔn)確率都是通過算力和樣本的積累所逐步達(dá)到的风题∨械迹或許真的有朝一日,AIOps的普遍準(zhǔn)確度——不是特定問題的準(zhǔn)確度——能夠達(dá)到運(yùn)維工作的容錯(cuò)程度沛硅。到那個(gè)時(shí)候眼刃,或許真的是對(duì)運(yùn)維人員是一個(gè)特別幸福的日子。
也有可能摇肌,是一個(gè)要找其他新工作的日子擂红。