[發明專利]服務調用記錄方法、裝置、計算機設備和存儲介質有效
| 申請號: | 201910578080.1 | 申請日: | 2019-06-28 |
| 公開(公告)號: | CN110290212B | 公開(公告)日: | 2020-06-23 |
| 發明(設計)人: | 季延彬 | 申請(專利權)人: | 浙江大搜車軟件技術有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L29/06 |
| 代理公司: | 杭州華進聯浙知識產權代理有限公司 33250 | 代理人: | 雷志剛 |
| 地址: | 310000 浙江省杭州市余*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 服務 調用 記錄 方法 裝置 計算機 設備 存儲 介質 | ||
本申請涉及一種服務調用記錄方法、裝置、計算機設備和存儲介質。所述方法包括:獲取檢測到的調用服務的調用類型;啟用與所述調用類型對應的動態代理,通過所述動態代理攔截所述調用服務的服務調用數據;從所述服務調用數據中提取出調用方法,判斷所述調用方法是否屬于所述動態代理的目標監控方法;當判定出所述調用方法屬于所述目標監控方法時,根據所述動態代理中的增強探針從所述服務調用數據中提取目標監控數據,將所述目標監控數據進行記錄。采用本方法能夠提高業務開發工作效率。
技術領域
本申請涉及計算機技術領域,特別是涉及一種服務調用記錄方法、裝置、計算機設備和存儲介質。
背景技術
在業務開發過程中,有些業務功能可能會涉及多個系統之間的調用,外部系統提供遠程服務,客戶端基于服務提供者提供的接口去調用遠程服務,本地業務系統也會通過暴露的遠程接口被外部系統進行遠程服務調用。
在本地系統與其它遠程服務進行交互時,為了能快速排查交互過程中出現的問題,需要對遠程服務調用過程中的調用數據進行記錄,目前,在開發過程中,由于各項業務需要攔截記錄的調用方法和記錄內容會存在差別,在各項業務的業務代碼中均需編寫遠程服務調用數據的記錄代碼,導致在業務代碼中會存在著大量的相似的模板性代碼,增加了業務開發的工作量,降低業務開發的工作效率,也造成系統開發過程中出現較多的冗余代碼。
發明內容
基于此,有必要針對上述技術問題,提供一種能夠提高業務開發工作效率的服務調用記錄方法、裝置、計算機設備和存儲介質。
一種服務調用記錄方法,所述方法包括:
獲取檢測到的調用服務的調用類型;
啟用與所述調用類型對應的動態代理,通過所述動態代理攔截所述調用服務的服務調用數據;
從所述服務調用數據中提取出調用方法,判斷所述調用方法是否屬于所述動態代理的目標監控方法;
當判定出所述調用方法屬于所述目標監控方法時,根據所述動態代理中的增強探針從所述服務調用數據中提取目標監控數據,將所述目標監控數據進行記錄。
針對每一類調用服務,設置與調用類型對應的動態代理,通過動態代理對使用該調用服務的各業務的服務調用數據進行統一監控、攔截、數據提取及記錄,無需在每個業務開發過程中均進行數據記錄功能的代碼編寫,從而有效減少了業務開發工作量和代碼冗余,并可在動態代理中設置需要進行監控的調用方法,實現定制化地數據攔截記錄。
在其中一個實施例中,獲取檢測到的調用服務的調用類型之前,還包括:
當檢測到程序啟動時,從所述程序的實例配置文件中解析出注解信息;
獲取所述注解信息所標識的屬性類型,創建與所述屬性類型對應的動態代理;
從所述注解信息中提取增強參數,根據所述增強參數創建增強探針,在所述動態代理中配置所述增強探針。
實現服務調用數據的監控記錄功能時,只需要將包含監控需求的注解信息添加至服務實例代碼中合適的位置中即可,無需針對各業務再分別進行代碼編寫,減少系統中的代碼冗余,且提高系統開發的工作效率。
在其中一個實施例中,所述方法還包括:
接收服務監控需求信息;
從所述服務監控需求信息中提取目標服務和監控對象參數;
根據所述監控對象參數生成注解信息,將所述注解信息添加至所述目標服務對應的實例代碼中。
上述方法中,可以根據業務需要對一類服務的實例代碼統一進行注解添加,并可根據具體的監控需求進行定制化注解,能夠方便靈活地實現服務調用的數據監控功能。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大搜車軟件技術有限公司,未經浙江大搜車軟件技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910578080.1/2.html,轉載請聲明來源鉆瓜專利網。





