前言
在數(shù)字化轉(zhuǎn)型浪潮下,全球基礎(chǔ)軟件行業(yè)正經(jīng)歷革命性變革。隨著物聯(lián)網(wǎng)設(shè)備數(shù)量的激增,企業(yè)每天產(chǎn)生的運(yùn)維日志、設(shè)備狀態(tài)、網(wǎng)絡(luò)流量等可觀測(cè)性數(shù)據(jù)呈指數(shù)級(jí)增長(zhǎng)。企業(yè)運(yùn)維團(tuán)隊(duì)面對(duì) TB 級(jí)數(shù)據(jù)如同「大海撈針」,故障定位耗時(shí)從分鐘級(jí)延長(zhǎng)至小時(shí)級(jí),人工經(jīng)驗(yàn)主導(dǎo)的決策更讓企業(yè)錯(cuò)失實(shí)時(shí)響應(yīng)的黃金窗口。
在此背景下,作為全球領(lǐng)先的「云邊端」連接與數(shù)據(jù)平臺(tái)供應(yīng)商,EMQ 創(chuàng)新性的結(jié)合 EMQX 的可觀測(cè)性數(shù)據(jù)與 DeepSeek 的 LLM(大語(yǔ)言模型)服務(wù),利用向量化知識(shí)庫(kù)、自動(dòng)化代碼生成和自然語(yǔ)言處理等 AI 技術(shù),幫助用戶快速解決設(shè)備數(shù)據(jù)無(wú)法上傳、設(shè)備斷連、連接時(shí)延增加、數(shù)據(jù)轉(zhuǎn)發(fā)緩慢等問(wèn)題。
現(xiàn)有物聯(lián)網(wǎng)數(shù)據(jù)可觀測(cè)性工具的局限
物聯(lián)網(wǎng)數(shù)據(jù)的可觀測(cè)性是通過(guò)監(jiān)控和管理車聯(lián)網(wǎng)、工業(yè)互聯(lián)網(wǎng)等平臺(tái)的數(shù)據(jù),確保數(shù)據(jù)在復(fù)雜的系統(tǒng)、流程和管道中保持高質(zhì)量、可用性和可靠性的一種實(shí)踐。它幫助用戶全面了解數(shù)據(jù)的狀態(tài),快速定位和分析問(wèn)題,提升系統(tǒng)的穩(wěn)定性和運(yùn)維效率。
在車聯(lián)網(wǎng)、工業(yè)互聯(lián)網(wǎng)等場(chǎng)景中,由于網(wǎng)絡(luò)條件和應(yīng)用的復(fù)雜性等原因,設(shè)備斷線、訂閱消息變慢、消息轉(zhuǎn)發(fā)滯后、消息丟失等問(wèn)題時(shí)有發(fā)生。如果沒(méi)有高效的可觀測(cè)性數(shù)據(jù)采集、存儲(chǔ)和分析系統(tǒng),運(yùn)維團(tuán)隊(duì)將花費(fèi)大量時(shí)間定位和分析相關(guān)故障,導(dǎo)致系統(tǒng) MTTR(Mean time to recovery)增加、用戶體驗(yàn)下降,甚至引發(fā)客戶投訴和品牌聲譽(yù)受損等問(wèn)題。
一般而言,可觀測(cè)性數(shù)據(jù)分析依賴于指標(biāo)(metrics)、跟蹤 (tracing)和日志 (logs)三大數(shù)據(jù)源:
1. 指標(biāo)(metrics)
用戶可以從基于時(shí)間維度的折線圖等整體快速判斷系統(tǒng)總體上是否有問(wèn)題。
·通過(guò)系統(tǒng)的 CPU、內(nèi)存和網(wǎng)絡(luò)等指標(biāo)使用情況來(lái)了解在指定時(shí)間段是否存在異常情況;
·通過(guò) EMQX 系統(tǒng)了解連接、消息發(fā)送和轉(zhuǎn)發(fā)等情況。
市場(chǎng)已經(jīng)有 Prometheus 和 Grafana 等成熟的相關(guān)產(chǎn)品,可以非常方便地對(duì)這些數(shù)據(jù)進(jìn)行存儲(chǔ)和展示。
2. 跟蹤(tracing)
了解系統(tǒng)內(nèi)部的運(yùn)行狀態(tài),知道問(wèn)題出在哪里。
·通過(guò)在系統(tǒng)內(nèi)部埋點(diǎn)的方式來(lái)跟蹤系統(tǒng)內(nèi)部、跨系統(tǒng)之間的調(diào)用鏈關(guān)系,以及各組件所消耗的時(shí)間。
目前市場(chǎng)上 Jaeger 等相關(guān)產(chǎn)品可以對(duì)鏈路數(shù)據(jù)進(jìn)行存儲(chǔ)、分析和展示。
3. 日志(logs)
用于定位故障的準(zhǔn)確原因。
·日志是程序在執(zhí)行過(guò)程中通過(guò)代碼打印的,用于讓開(kāi)發(fā)和運(yùn)維人員了解系統(tǒng)的執(zhí)行狀態(tài),以及執(zhí)行過(guò)程中發(fā)生的一些錯(cuò)誤和異常情況。
市場(chǎng)上有 ElasticSearch 等相關(guān)成熟的產(chǎn)品可以實(shí)現(xiàn)對(duì)日志的存儲(chǔ)、查詢和展示。
目前,市場(chǎng)中的大部分可觀測(cè)性數(shù)據(jù)工具都存在以下局限性:
· 功能預(yù)置化:大部分功能依賴供應(yīng)商預(yù)設(shè),無(wú)法靈活應(yīng)對(duì)未知異常。
· 知識(shí)庫(kù)靜態(tài)化:依賴文字匹配搜索解決方法,無(wú)法針對(duì)相關(guān)問(wèn)題提供精準(zhǔn)建議。
· 智能化不足:缺乏問(wèn)題推理能力,難以應(yīng)對(duì)復(fù)雜場(chǎng)景下的問(wèn)題分析。
利用 AI 實(shí)現(xiàn)更加智能的可觀測(cè)性數(shù)據(jù)分析
基于大語(yǔ)言模型(LLM)提供的推理能力,可以顯著提升可觀測(cè)性數(shù)據(jù)分析的智能化水平:
· 智能化推理:結(jié)合上下文對(duì)系統(tǒng)異常進(jìn)行推理和判斷,而非依賴硬編碼規(guī)則。
· 自然語(yǔ)言處理:通過(guò) AI 生成代碼的方式靈活處理數(shù)據(jù),滿足特殊場(chǎng)景需求。
· 向量化知識(shí)庫(kù):利用 AI 推理能力,精準(zhǔn)輸出問(wèn)題解決方案。
· AI Agent 框架:基于 LLM 推理提供的方案提供自動(dòng)化運(yùn)維的能力,實(shí)現(xiàn) AI 時(shí)代的智能運(yùn)維。
DeepSeek R1 是深度求索 (DeepSeek) 公司開(kāi)發(fā)的推理優(yōu)化模型,通過(guò)強(qiáng)化學(xué)習(xí)訓(xùn)練(RL),能夠在復(fù)雜場(chǎng)景中進(jìn)行高效的推理和內(nèi)容生成。而 DeepSeek V3 是一款強(qiáng)大的生成式大語(yǔ)言模型,采用混合專家架構(gòu),優(yōu)化了訓(xùn)練效果和內(nèi)容生成的效率與質(zhì)量。通過(guò)結(jié)合 DeepSeek 的 R1 和 V3 模型,可以高效處理物聯(lián)網(wǎng)場(chǎng)景中的海量異構(gòu)數(shù)據(jù)和交互需求。
為了幫助用戶進(jìn)行更加高效的物聯(lián)網(wǎng)系統(tǒng)運(yùn)維,EMQX ECP 最新版本集成了基于 DeepSeek V3 的數(shù)據(jù)可觀測(cè)性工具。在 EMQX 集群和邊緣服務(wù)快速部署、遠(yuǎn)程操作、集中管理等功能的基礎(chǔ)上,用戶可以充分利用 AI 的推理能力,實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)的物聯(lián)網(wǎng)智能運(yùn)維。
該數(shù)據(jù)可觀測(cè)性工具主要包含以下三部分:
1. 向量知識(shí)庫(kù)構(gòu)建:將產(chǎn)品文檔、運(yùn)維知識(shí)和事故分析報(bào)告等文檔進(jìn)行向量化,增強(qiáng) LLM 對(duì)相關(guān)問(wèn)題的高效檢索和應(yīng)用;
2. 數(shù)據(jù)源收集:EMQX 將指標(biāo)、跟蹤和日志等數(shù)據(jù)通過(guò) OpenTelemetry 等協(xié)議發(fā)送到 Datalayers 數(shù)據(jù)庫(kù)中,為 LLM 提供需要分析的數(shù)據(jù)源;
3. 問(wèn)題解決:
?。?)直接從向量庫(kù)中搜索到相應(yīng)的內(nèi)容作為上下文,并結(jié)合 prompt,把推理結(jié)果 (output) 直接返回給用戶;
(2)根據(jù)用戶的需求,在 Datalayers 數(shù)據(jù)庫(kù)中加載相關(guān)的數(shù)據(jù),并生成相關(guān)的代碼,對(duì)數(shù)據(jù)進(jìn)行處理。同時(shí)將有問(wèn)題的數(shù)據(jù)和向量庫(kù)中找到的結(jié)果作為上下文發(fā)送給 LLM,由 LLM 推理,形成相關(guān)的解決方案,組織為自然語(yǔ)言并返回給用戶。
根據(jù)客戶需求,后續(xù)還可以增加 Agent 自動(dòng)運(yùn)維編排的場(chǎng)景。例如:當(dāng)發(fā)生某些情況時(shí),自動(dòng)發(fā)起擴(kuò)容或發(fā)送通知等操作;另外還可以增加自動(dòng)線上運(yùn)維巡檢,生成并發(fā)送高質(zhì)量的巡檢報(bào)告等。
AI 交互操作演示
接下來(lái),我們將展示如何使用 AI 進(jìn)行交互操作。在部署 EMQX ECP 后,用戶可以進(jìn)入工作臺(tái)并點(diǎn)擊左側(cè)導(dǎo)航欄中的「鏈路追蹤」功能,利用 EMQX 提供的端到端鏈路追蹤能力來(lái)分析和排查問(wèn)題。盡管鏈路追蹤提供了強(qiáng)大的數(shù)據(jù)支持,幫助定位和發(fā)現(xiàn)問(wèn)題,但在復(fù)雜情況下仍需要專業(yè)背景來(lái)分析問(wèn)題根源。為提高效率,我們將 DeepSeek 的大語(yǔ)言模型集成到鏈路追蹤高級(jí)查詢頁(yè)面的數(shù)據(jù)分析能力中,利用 AI 模型的推理和生成能力來(lái)幫助用戶更快速、智能地定位問(wèn)題并提供解決方案。
數(shù)據(jù)分析概覽功能
首先,進(jìn)入鏈路追蹤頁(yè)面并點(diǎn)擊右上角的「高級(jí)查詢」按鈕,進(jìn)入查詢頁(yè)面。在這里,用戶需要選擇一個(gè) EMQX 集群標(biāo)識(shí),并根據(jù)需要選擇一個(gè)或多個(gè) Client ID 來(lái)定位數(shù)據(jù)源。接著,選擇想要查詢分析的時(shí)間段(默認(rèn)為全部時(shí)間段),然后點(diǎn)擊查詢按鈕,系統(tǒng)會(huì)返回指定 Client ID 下的所有鏈路追蹤數(shù)據(jù)。
當(dāng)查詢結(jié)果返回后,用戶將看到包含多個(gè)鏈路追蹤數(shù)據(jù)的列表,通常數(shù)據(jù)量較大。人工識(shí)別異常數(shù)據(jù)可能較為困難,此時(shí)可以使用 AI 助手功能,點(diǎn)擊右下角的 AI 助手按鈕后,會(huì)彈出一個(gè)對(duì)話框。用戶可以在對(duì)話框中輸入需要分析的數(shù)據(jù)的需求,AI 助手會(huì)根據(jù)輸入的信息生成數(shù)據(jù)分析結(jié)果,并提供優(yōu)化建議等。
當(dāng)點(diǎn)擊右下角的 AI 助手中的「追蹤數(shù)據(jù)概覽」快捷按鈕后,系統(tǒng)會(huì)生成針對(duì)當(dāng)前查詢到的所有追蹤數(shù)據(jù)的概覽分析。該分析通常包括以下幾個(gè)部分:
· 整體狀況:展示當(dāng)前查詢的所有客戶端 ID 的總追蹤條數(shù)、成功率、平均響應(yīng)時(shí)間、最小響應(yīng)時(shí)間、最大響應(yīng)時(shí)間,以及 P95 和 P99 響應(yīng)時(shí)間。
· 異常情況:顯示錯(cuò)誤率較高的客戶端(錯(cuò)誤率超過(guò)一定閾值)、響應(yīng)時(shí)間異常的客戶端(平均響應(yīng)時(shí)間超過(guò)閾值)以及異常追蹤(例如耗時(shí)特別長(zhǎng)的追蹤)。
· 關(guān)鍵發(fā)現(xiàn):列出主要異常的客戶端或鏈路,幫助用戶定位潛在的故障點(diǎn)。
· 建議:根據(jù)數(shù)據(jù)分析結(jié)果,系統(tǒng)會(huì)給出針對(duì)性的優(yōu)化建議和排查方向。
根據(jù)概覽功能生成的報(bào)告,用戶就可以迅速識(shí)別出異常的鏈路數(shù)據(jù)。例如,系統(tǒng)可能會(huì)指出某個(gè)客戶端的響應(yīng)時(shí)間過(guò)長(zhǎng),或某些 Client ID 的鏈路錯(cuò)誤率過(guò)高?;谶@些信息,用戶可以通過(guò)搜索和過(guò)濾,立即找到異常鏈路的 Trace ID。后續(xù)只要點(diǎn)擊 Trace ID,下方就會(huì)顯示該追蹤的詳細(xì)信息,展示相關(guān)服務(wù)和操作的時(shí)間軸的鏈路結(jié)構(gòu),其中每個(gè) Span 代表一個(gè)操作,用戶可以將鼠標(biāo)懸停在某個(gè)操作上,查看具體步驟和信息。
雖然有效數(shù)據(jù)屬性有助于定位問(wèn)題,但在例如只有錯(cuò)誤碼的情況下,問(wèn)題可能不夠清晰。這時(shí),可以使用 AI 助手功能,點(diǎn)擊「Spans 數(shù)據(jù)概覽」按鈕,快速分析詳細(xì)原因。
AI 助手將提供每個(gè) Span 操作的詳細(xì)分析,包含錯(cuò)誤信息、潛在原因及修復(fù)建議。通過(guò)接入我們構(gòu)建的知識(shí)庫(kù),AI 能夠更加準(zhǔn)確地分析錯(cuò)誤原因,并給出針對(duì)性的排查方案或修復(fù)建議。借助知識(shí)庫(kù)中積累的歷史案例和解決方案,AI 可以迅速定位真實(shí)問(wèn)題,避免用戶手動(dòng)搜索和排查,提高問(wèn)題定位的精準(zhǔn)度和效率。
腳本模式功能
EMQX ECP AI 助手還提供了自定義腳本功能。通過(guò)對(duì)話框上方的腳本模式開(kāi)關(guān),用戶可以啟用腳本模式,利用 DeepSeek 強(qiáng)大的模型和編碼推理能力。腳本模式開(kāi)啟后,用戶可以通過(guò)對(duì)話框發(fā)送自定義數(shù)據(jù)需求,AI 會(huì)自動(dòng)生成相應(yīng)的數(shù)據(jù)分析腳本,并根據(jù)當(dāng)前的數(shù)據(jù)執(zhí)行運(yùn)算,快速得出分析結(jié)果。AI 可基于結(jié)果自動(dòng)生成圖表或文檔,幫助用戶直觀地理解數(shù)據(jù),快速定位問(wèn)題。
示例 1:計(jì)算 duration 的平均值
在腳本模式下,用戶發(fā)送了一個(gè)「計(jì)算當(dāng)前追蹤數(shù)據(jù)中 duration 字段(耗時(shí))的平均值」的請(qǐng)求。AI 助手此時(shí)會(huì)根據(jù)需求自動(dòng)生成并執(zhí)行相關(guān)的腳本代碼,然后計(jì)算出 duration 的平均值,并返回結(jié)果。結(jié)果將直接顯示在對(duì)話框內(nèi),同時(shí)生成了一份關(guān)于結(jié)果分析的總結(jié)報(bào)告。
示例 2:查看錯(cuò)誤的 Trace 對(duì)于當(dāng)前總的 Traces 的占比分布
AI 助手會(huì)根據(jù)用戶需求來(lái)自動(dòng)判斷是否需要生成對(duì)應(yīng)的圖表,例如當(dāng)用戶提問(wèn)了「查看錯(cuò)誤的 Trace 對(duì)于當(dāng)前總的 Traces 的占比分布」時(shí),AI 助手會(huì)根據(jù)請(qǐng)求生成分析腳本,計(jì)算出錯(cuò)誤 Trace 的占比,并自動(dòng)繪制以圖表的形式呈現(xiàn),并附加上結(jié)果和圖表的分析報(bào)告。此功能非常適合用戶通過(guò)比例分析來(lái)評(píng)估系統(tǒng)健康狀態(tài)。
通過(guò)腳本模式,AI 不僅可以幫助用戶完成復(fù)雜的數(shù)據(jù)分析任務(wù),還能根據(jù)用戶的需求靈活生成代碼。用戶無(wú)需編寫代碼或手動(dòng)計(jì)算數(shù)據(jù),AI 會(huì)自動(dòng)進(jìn)行推理和計(jì)算,減少人工干預(yù),提高數(shù)據(jù)分析效率。此外,生成的圖表和報(bào)告更加直觀,幫助用戶迅速掌握關(guān)鍵信息,優(yōu)化決策過(guò)程。
總結(jié)
結(jié)合 EMQX 的可觀測(cè)性數(shù)據(jù)與 LLM DeepSeek 的數(shù)據(jù)推理能力,可以顯著降低系統(tǒng)運(yùn)維的工作量和成本,提升運(yùn)維效率和質(zhì)量,同時(shí)大幅縮短系統(tǒng)故障的定位和分析時(shí)間,并提供有針對(duì)性的方案或建議,進(jìn)一步提升客戶滿意度。隨著 LLM 技術(shù)的快速發(fā)展,智能運(yùn)維 Agent 正在實(shí)現(xiàn)更復(fù)雜的自動(dòng)化能力,逐步解放運(yùn)維和支持人員的工作負(fù)擔(dān),為企業(yè)的數(shù)字化轉(zhuǎn)型提供強(qiáng)有力的支持。
免責(zé)聲明:以上內(nèi)容為本網(wǎng)站轉(zhuǎn)自其它媒體,相關(guān)信息僅為傳遞更多信息之目的,不代表本網(wǎng)觀點(diǎn),亦不代表本網(wǎng)站贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性。如稿件版權(quán)單位或個(gè)人不想在本網(wǎng)發(fā)布,可與本網(wǎng)聯(lián)系,本網(wǎng)視情況可立即將其撤除。