[發明專利]報文軌跡追蹤方法及裝置在審
| 申請號: | 201610973416.0 | 申請日: | 2016-10-28 |
| 公開(公告)號: | CN106656559A | 公開(公告)日: | 2017-05-10 |
| 發明(設計)人: | 高福亮 | 申請(專利權)人: | 漢柏科技有限公司 |
| 主分類號: | H04L12/24 | 分類號: | H04L12/24;H04L12/26 |
| 代理公司: | 北京路浩知識產權代理有限公司11002 | 代理人: | 李相雨 |
| 地址: | 300384 天津市濱海新*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 報文 軌跡 追蹤 方法 裝置 | ||
技術領域
本發明涉及計算機及通信技術領域,尤其涉及一種報文軌跡追蹤方法及裝置。
背景技術
目前,研發內部定位問題一般使用消除故障程序debug調試版本,獲取報文軌跡的方法一般是程序調試工具gdb下通過設置斷點然后使用bt命令查看函數調用棧信息,或依次逐層設置目標函數為斷點,若目標函數被斷住則執行到了該函數,然則反之.
但是gdb調試過程中流量是中斷的;現網發布使用的版本一般為release版本,非gdb方式啟動不能直接進行gdb調試,并且在不允許流量中斷的現網環境調試時一般也無法使用gdb attatch pid的方式進行gdb調試,所以在現網環境出現流量不通或業務功能異常時就無法使用現有技術判斷出報文經過的函數調用流程,進而無法確認報文被丟棄在哪一層(二層:物理鏈路層;三層:傳輸層;四層及以上:網絡層),是接收方向有問題,還是發送方向有問題等。
鑒于此,如何解決在現網環境出現流量不通或業務功能異常時不能獲得報文所經函數調用流程的問題成為目前需要解決的技術問題。
發明內容
為解決上述的技術問題,本發明提供一種報文軌跡追蹤方法及裝置,能夠解決在現網環境出現流量不通或業務功能異常時不能獲得報文所經函數調用流程的問題。
第一方面,本發明提供一種報文軌跡追蹤方法,包括:
在接收到用戶輸入的預設命令時,判斷所述預設命令是否為報文軌跡追蹤功能的開啟命令,所述開啟命令中預先設置了標記報文;
若所述預設命令為報文軌跡追蹤功能的開啟命令,則在報文流程中依次調用預設宏函數,以獲取并展示標記報文在報文流程中經過的文件名、函數名和行號。
可選地,所述預設命令中包括:預設全局變量和預設全局變量指針;
所述預設全局變量為報文軌跡追蹤功能開關標志位,所述預設全局變量為第一預設值表示開啟報文軌跡追蹤功能,所述預設全局變量為第二預設值表示關閉報文軌跡追蹤功能;
所述預設全局變量指針,用于在報文軌跡追蹤功能開啟時記錄作為報文追蹤對象的標記報文指針,在報文軌跡追蹤功能關閉時賦值為空;
所述預設宏函數中預先設置結構體數組并聲明所述預設結構體數組的全局變量;所述預設結構體數組的成員,包括但不限于:文件名、函數名和行號。
可選地,所述在報文流程中依次調用預設宏函數,以獲取并展示標記報文在報文流程中經過的文件名、函數名和行號,包括:
在報文流程中依次調用預設宏函數,利用所述預設宏函判斷當前報文是否為標記報文,若是,則將對應調用所述預設宏函數的文件名、函數名和行號記錄進所述預設宏函數中的預設結構體數組的變量中,并將所述預設結構體數組的下標進行累加;
循環遍歷所述預設宏函數中的預設結構體數組的全局變量,將標記報文經過的文件名、函數名和行號進行展示。
可選地,所述判斷當前報文是否為標記報文,包括:
判斷調用后預設宏函數中的入參報文指針是否等于標記報文指針;
若所述入參報文指針等于標記報文指針,則確定當前報文為標記報文。
可選地,所述將對應調用所述預設宏函數的文件名、函數名和行號記錄進預設結構體數組的變量中,包括:
借助linux提供的宏,將對應調用所述預設宏函數的文件名、函數名和行號記錄進預設結構體數組的變量中。
可選地,在所述獲取并展示標記報文在報文流程中經過的文件名、函數名和行號之后,所述方法還包括:
將標記報文的函數調用棧信息與正常報文流程的函數調用棧信息進行對比,確認標記報文所經函數調用流程是否正常并在不正常時定位現網問題。
第二方面,本發明提供一種報文軌跡追蹤方法裝置,包括:
判斷模塊,用于在接收到用戶輸入的預設命令時,判斷所述預設命令是否為報文軌跡追蹤功能的開啟命令,所述開啟命令中預先設置了標記報文;
調用模塊,用于若所述預設命令為報文軌跡追蹤功能的開啟命令,則在報文流程中依次調用預設宏函數,以獲取并展示標記報文在報文流程中經過的文件名、函數名和行號。
可選地,所述預設命令中包括:預設全局變量和預設全局變量指針;
所述預設全局變量為報文軌跡追蹤功能開關標志位,所述預設全局變量為第一預設值表示開啟報文軌跡追蹤功能,所述預設全局變量為第二預設值表示關閉報文軌跡追蹤功能;
所述預設全局變量指針,用于在報文軌跡追蹤功能開啟時記錄作為報文追蹤對象的標記報文指針,在報文軌跡追蹤功能關閉時賦值為空;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于漢柏科技有限公司,未經漢柏科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610973416.0/2.html,轉載請聲明來源鉆瓜專利網。





