[發明專利]一種方法級鏈路追蹤方法在審
| 申請號: | 202211213608.3 | 申請日: | 2022-09-29 |
| 公開(公告)號: | CN115576786A | 公開(公告)日: | 2023-01-06 |
| 發明(設計)人: | 彭樂樂;張磊敏;劉冉;劉佳利 | 申請(專利權)人: | 上海浦東發展銀行股份有限公司 |
| 主分類號: | G06F11/34 | 分類號: | G06F11/34 |
| 代理公司: | 上海科盛知識產權代理有限公司 31225 | 代理人: | 嚴玉丹 |
| 地址: | 200002 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 方法 級鏈路 追蹤 | ||
1.一種方法級鏈路追蹤方法,其特征在于,所述鏈路追蹤方法包含以下步驟:
請求發往服務,服務接收到請求后記錄服務級的鏈路信息;
服務內部業務邏輯方法執行時會進入加載好的攔截器,所述攔截器生成含有方法信息的方法級鏈路span,所述方法級鏈路span擁有服務級鏈路相同的鏈路Id;
所述攔截器的加載過程包括以下步驟:
從配置中心獲取鏈路配置項,所述配置項包括鏈路開關配置和加載對象信息;
判斷鏈路開關是否打開,在鏈路開關打開的情況下,以brave作為埋點庫,通過字節碼增強庫ByteBuddy創建一個的類轉換器添加到Instrumentation組件中;注冊用于記錄方法執行過程鏈路數據的攔截器;
在類的加載過程中將類的字節碼交給所述類轉換器,所述類轉換器通過配置項的加載對象信息決定類的方法是否需要增強;對需要增強的方法增加攔截器。
2.根據權利要求1所述的一種方法級鏈路追蹤方法,其特征在于,所述方法信息包括方法名、執行時間和執行錯誤后的堆棧。
3.根據權利要求1所述的一種方法級鏈路追蹤方法,其特征在于,所述方法級鏈路span還記錄有一個用于區分鏈路類型的標識。
4.根據權利要求1所述的一種方法級鏈路追蹤方法,其特征在于,所述配置中心存儲有多種配置項,通過使用不同配置項可以做到動態調整開關控制。
5.根據權利要求1所述的一種方法級鏈路追蹤方法,其特征在于,所述類轉換器為ClassFileTransformer類型的類轉換器。
6.根據權利要求1所述的一種方法級鏈路追蹤方法,其特征在于,所述加載對象信息包括應用程序包名或類名。
7.根據權利要求6所述的一種方法級鏈路追蹤方法,其特征在于,當所述加載對象信息為應用程序包名時,所述類轉換器通過應用程序包名匹配判斷類文件是否在包內,來決定類的方法是否需要增強。
8.根據權利要求6所述的一種方法級鏈路追蹤方法,其特征在于,當所述加載對象信息為類名時,所述類轉換器通過判斷類名是否相同,來決定類的方法是否需要增強。
9.根據權利要求1所述的一種方法級鏈路追蹤方法,其特征在于,所述攔截器中包括方法執行前beforeMethod,方法執行后afterMethod以及出現異常時的handleMethodException的邏輯程序。
10.根據權利要求1所述的一種方法級鏈路追蹤方法,其特征在于,所述攔截器將鏈路數據封裝好,異步發送到ES存儲。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海浦東發展銀行股份有限公司,未經上海浦東發展銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202211213608.3/1.html,轉載請聲明來源鉆瓜專利網。





