[發明專利]一種獲取進程信息的方法和設備有效
| 申請號: | 201810015256.8 | 申請日: | 2018-01-08 |
| 公開(公告)號: | CN108197029B | 公開(公告)日: | 2021-06-01 |
| 發明(設計)人: | 張翔;胡昊然;王睿;陳昶;黃昆 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 獲取 進程 信息 方法 設備 | ||
本發明實施例公開了一種獲取進程信息的方法和設備,其中方法的實現包括:Python解釋器注冊需要回調的事件;在所述Python解釋器執行Python進程的過程中,當所注冊的事件發生時,所述Python解釋器觸發事件回調,輸出所述Python進程的進程信息。使用本發明實施例公開的技術方案,可以增強Python解釋器的追蹤能力,不需要借助第三方工具、也無需修改業務代碼。
技術領域
本發明涉及云計算技術領域,特別涉及一種獲取進程信息的方法和設備。
背景技術
隨著計算機技術和網絡技術的高速發展,云計算成為最流行的技術。著名的云計算開源平臺Openstack是基于Python語言開發的。Google、Instagram、Dropbox、Youtube、Reddit和Quora等公司都在使用Python語言來實現核心業務的開發。
Python語言是一種面向對象的解釋型計算機程序設計語言。使用Python語言開發的程序在運行中如發生問題,一般通過查看日志和源碼來調試、定位問題。為此業界針對Python 程序開發了一些有追蹤功能的第三方工具,如Yappi,Heapy,Pyflame等。Yappi一般用于 Python多線程的追蹤;Heapy通常是用來展示Python堆的各種信息;Pyflame使用Linux ptrace系統來收集追蹤信息,并生成對應Python進程的火焰圖。
現有的上述第三方工具,功能比較單一,可擴展性弱。如Pyflame只能生成火焰圖,用于發現函數熱點;而Heapy和Yappi只能追蹤Python內存。
發明內容
本發明實施例提供了一種獲取進程信息的方法和設備,增強了Python解釋器的追蹤能力。
本發明實施例提供了一種獲取進程信息的方法,包括:
Python解釋器注冊需要回調的事件;
在所述Python解釋器執行Python進程的過程中,當所注冊的事件發生時,所述Python 解釋器觸發事件回調,輸出所述Python進程的進程信息。
本發明實施例還提供了一種獲取進程信息的設備,所述設備上運行有一Python解釋器和一Python進程,所述Python解釋器執行所述Python進程;
所述Python解釋器用于注冊需要回調的事件;并在所注冊的事件發生時,觸發事件回調,輸出所述Python進程的進程信息。
本發明實施例提供的另一種獲取進程信息的設備包括:
事件注冊模塊,用于注冊需要回調的事件;
事件回調模塊,用于在Python解釋器執行Python進程的過程中,當所注冊的事件發生時,觸發事件回調,輸出所述Python進程的進程信息。
本發明實施例還提供包括至少一處理器和至少一存儲器的獲取進程信息的設備,所述至少一個存儲器用于存儲計算機程序,所述至少一個處理器用于調用所述至少一個存儲器中的程序代碼來執行所述本發明實施例所記載的方法。
本發明實施例還提供一種計算機存儲介質,所述計算機存儲介質上儲存為計算機軟件指令,所述計算機軟件指令運行后使計算機執行本發明實施例所記載的方法。
本發明實施例的技術方案可以增強Python解釋器的追蹤能力,且不需要借助第三方工具、也無需修改業務代碼。
附圖說明
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域的普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例涉及的Python解釋器的邏輯示意圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810015256.8/2.html,轉載請聲明來源鉆瓜專利網。
- 信息記錄介質、信息記錄方法、信息記錄設備、信息再現方法和信息再現設備
- 信息記錄裝置、信息記錄方法、信息記錄介質、信息復制裝置和信息復制方法
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄設備、信息重放設備、信息記錄方法、信息重放方法、以及信息記錄介質
- 信息存儲介質、信息記錄方法、信息重放方法、信息記錄設備、以及信息重放設備
- 信息存儲介質、信息記錄方法、信息回放方法、信息記錄設備和信息回放設備
- 信息記錄介質、信息記錄方法、信息記錄裝置、信息再現方法和信息再現裝置
- 信息終端,信息終端的信息呈現方法和信息呈現程序
- 信息創建、信息發送方法及信息創建、信息發送裝置





