System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及計算機,尤其涉及一種業務請求異常定界分析方法、系統、電子設備及存儲介質。
技術介紹
1、隨著云原生技術的發展與普及,企業正加速采用kubernetes來實現工作負載的容器化管理。這一趨勢伴隨著業務系統全面容器化,引發了對日益龐大的集群規模所帶來的運維監控復雜性的關注。針對云業務場景,在識別業務應用運行狀態的基礎上,不借助額外的標準化日志和traceid改造過程,為建立統一的業務異常定界提供數據支撐。現有業務異常排查能力依然局限于應用網絡狀況或者改造應用代碼中,運行于kubernetes集群中的系統無法有效關聯內核指標,進行標準化的業務問題定界。集群現有業務進行相應改造,引入額外的應用探針和大量的代碼改造服務,進行業務異常定界分析,同時需要進行繁瑣的配置,改造成本和學習成本較大,且對于業務應用的侵入性明顯,對業務應用的使用造成影響。
2、現有業務針對kubernetes上運行業務的異常問題,一般有三種:第一種,通過集成prometheus、grafana等監控工具,實時收集和分析集群及應用層面的指標數據,如cpu使用率、內存消耗、網絡i/o和磁盤i/o,從而及時發現資源瓶頸和潛在故障,通過資源指標定界業務層面問題。第二種:通過細致調整應用配置,并輔以必要的代碼監測引入標準化日志監測和代碼改造服務,構建一個深入代碼級別的監控框架,從而分析和界定業務異常的根源。第三種:旁路監控模式,通過網絡數據包的獲取進行數據保存,通過交換機等網絡設備的端口鏡像功能來實現監控,在此模式下,監控設備連接到交換機的指定鏡像端口,
3、云上監控組件使用的局限性
4、在kubernetes環境中,傳統的監控方法暴露出顯著局限性,尤其在監測業務運行的全貌方面。日志監測通過在應用關鍵方法埋點的方式,輸出應用程序的執行過程和狀態,可用于開發調試和應用故障排查,帶來了日志標準化格式的問題,對于存儲和資源需求要求較高,查詢也帶來實時性限制,處理和檢索大量日志數據。同時,應用性能管理(apm)工具雖然能深入應用內部,但其實施過程繁瑣,需要在目標系統中植入監控代理,這往往要求應用重啟,從而增加了部署與維護的成本和復雜度。以往依賴于網絡設備如交換機的鏡像功能來捕捉流量數據的方式,在面對云原生的虛擬網絡架構時顯得力不從心,因為它們未能有效辨識與追蹤復雜的云上流量模式。
5、云上業務問題定界存在盲區
6、傳統市場的解決方案指標依賴專家及運氣,專業指標解讀只有相應專家經驗才能快速理解并運用。大量問題由專家經驗添加指標和日志,導致監控的盲區并未自行消失,仍然存在,無法形成標準化指標體系流程。云上業務系統對于指標的生成,在預料到可能有問題的地方記錄日志,發生過問題的地方增加指標或者事件記錄。同時,有大量的網絡指標、應用性能、硬件指標離散出現,導致指標無法利用、無法進行問題排查的情況下,更加導致了無法串聯形成體系化的指標治理。
7、監控工具的豎井式問題
8、各監控系統模塊之間信息無法有效共享,導致整體監控視圖不連貫,關鍵信息可能被遺漏,不同的工具可能提供不同的監控視圖和報警信息,需要花費更多的時間和精力來分析和比對,延長了問題定界的時間。
技術實現思路
1、針對上述問題中存在的不足之處,本專利技術提供一種業務請求異常定界分析方法、系統、電子設備及存儲介質。
2、為實現上述目的,本專利技術提供一種業務請求異常定界分析方法,包括:
3、通過ebpf探針監聽目標業務系統中的內核事件列表,并實時捕獲內核事件,獲取內核指標;
4、在每個所述內核指標上添加進程pid和單次請求中的線程tid的標簽;
5、基于捕獲所述內核事件,觸發對應進程系統調用函數,并存儲對應耗時、請求事物及內核事件;
6、判斷所述請求事物中的url信息是否存在于映射中,若存在則所述映射替換所述url;
7、將映射、所述進程pid和所述單次請求中的線程tid添加到過濾器映射中;
8、將相同所述標簽的內核指標與所述請求事物關聯,展示異常應用請求中的具體異常問題。
9、優選的是,所述內核指標包括內核內存、cpu限制、swap使用情況、建聯指標、網絡丟包、網路重傳、dns解析情況、磁盤讀寫、其他進程io分布、lock時間、futex時間指標數據。
10、優選的是,通過ebpf探針監聽目標業務系統中的內核事件列表包括:
11、定義一內核模塊的初始化函數;
12、所述初始化函數注冊一個kprobe到指定的內核函數__alloc_pages_nodemask上;
13、進行kprobe結構體定義,最后調用register_kprobe函數來注冊kprobe;
14、在內存分配所述函數調用時打印日志,記錄內存分配嘗試的位置;在內存分配函數返回時打印日志,記錄內存分配的結果;最后用?for?循環遍歷搜索結果中的每一個searchhit?對象;
15、使用條件判斷和?map?查找來替換?url;然后通過將?url放入?filt?映射中。
16、優選的是,所述ebpf?探針從請求io讀取開始記錄開始時間starttime到結束時間endtime內的系統調用函數;通過所述ebpf?探針獲取請求時發生的所有內核事件函數,在所有所述內核指標中加上進程pid、單次請求中的線程tid的標簽;通過相同標簽,串連相同標簽的所述內核指標與請求關聯,展示異常應用請求中的具體異常問題。
17、優選的是,所述ebpf?探針讀取系統調用函數并關聯tid、pid步驟包括:
18、獲取所述內核指標,被觸發時捕獲當前進程的的系統調用函數,保存對應耗時、請求事物及內核事件;
19、判斷所述請求事物的url?信息,映射替換并填充過濾器映射,使用條件判斷和map?查找來替換?url;
20、保留url、tip及pid字段標簽,通過將?url、tid和pid放入?filt?映射中,為后續的過濾或處理操作提供必要的信息;
21、確認所述請求事物發生的時間段內,記錄開始時間starttime及結束時間endtime,通過已經獲取的日志中的時間段,進行日志信息的關聯及頁面的展示。
22、本申請還提供一種業務請求異常定界分析系統,包括:
23、探針模塊,用于通過ebpf探針監聽目標業務系統中的內核事件列表,并實時捕獲內核事件,獲取內核指標;
24、添加模塊,用于在每個所述內核指標上添加進程pid和單次請求中的線程tid的標簽;
25、觸發模塊,用于基于捕獲所述內核事件,觸發對應進程系統調用函數,并存儲對應耗時、請求事物及內核事件;
26、替換模塊,用于判斷所述請求事物中的url信息是否存在于映射中,若存在則所述映射替換所述url本文檔來自技高網...
【技術保護點】
1.一種業務請求異常定界分析方法,其特征在于,包括:
2.根據權利要求1所述的業務請求異常定界分析方法,其特征在于,所述內核指標包括內核內存、cpu限制、swap使用情況、建聯指標、網絡丟包、網路重傳、DNS解析情況、磁盤讀寫、其他進程IO分布、lock時間、futex時間指標數據。
3.根據權利要求2所述的業務請求異常定界分析方法,其特征在于,通過eBPF探針監聽目標業務系統中的內核事件列表包括:
4.根據權利要求3所述的業務請求異常定界分析方法,其特征在于,所述eBPF?探針從請求IO讀取開始記錄開始時間starttime到結束時間endtime內的系統調用函數;通過所述eBPF?探針獲取請求時發生的所有內核事件函數,在所有所述內核指標中加上進程pid、單次請求中的線程tid的標簽;通過相同標簽,串連相同標簽的所述內核指標與請求關聯,展示異常應用請求中的具體異常問題。
5.根據權利要求4所述的業務請求異常定界分析方法,其特征在于,所述eBPF?探針讀取系統調用函數并關聯tid、pid步驟包括:
6.一種業務請求異常定
7.一種電子設備,其特征在于,包括至少一個處理單元以及至少一個存儲單元,其中,所述存儲單元存儲有計算機程序,當所述程序被所述處理單元執行時,使得所述處理單元執行權利要求1~5任一權利要求所述的方法。
8.一種存儲介質,其特征在于,其存儲有可由電子設備執行的計算機程序,當所述程序在所述電子設備上運行時,使得所述電子設備執行權利要求1~5任一權利要求所述的方法。
...【技術特征摘要】
1.一種業務請求異常定界分析方法,其特征在于,包括:
2.根據權利要求1所述的業務請求異常定界分析方法,其特征在于,所述內核指標包括內核內存、cpu限制、swap使用情況、建聯指標、網絡丟包、網路重傳、dns解析情況、磁盤讀寫、其他進程io分布、lock時間、futex時間指標數據。
3.根據權利要求2所述的業務請求異常定界分析方法,其特征在于,通過ebpf探針監聽目標業務系統中的內核事件列表包括:
4.根據權利要求3所述的業務請求異常定界分析方法,其特征在于,所述ebpf?探針從請求io讀取開始記錄開始時間starttime到結束時間endtime內的系統調用函數;通過所述ebpf?探針獲取請求時發生的所有內核事件函數,在所有所述內核指標中加上進程pid、單次...
【專利技術屬性】
技術研發人員:李留,王翱宇,蔣玉芳,王麗麗,原學東,張紅陽,
申請(專利權)人:杭州諧云科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。