91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Go語言程序查看和診斷工具怎么用

發布時間:2022-04-14 16:02:21 來源:億速云 閱讀:138 作者:iii 欄目:大數據

這篇“Go語言程序查看和診斷工具怎么用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Go語言程序查看和診斷工具怎么用”文章吧。

想必Java 的開發者沒有不知道或者沒用過 jps 這個命令的,這個命令是用來在主機上查看有哪些 Java 程序在運行的。

Go語言程序查看和診斷工具怎么用

我剛用 Go 語言程序的時候也很苦惱,我部署在公司服務器上的 Go 程序,其他的同事由于不清楚就經常找不到。

那么 Go 語言有沒有像 jps 這樣的工具呢?當然有,不僅有,而且還是 Google 自己出品的,官方認證(這種問題 Google 不可能自己想不到啊)。名稱也跟 jps 很像,叫 gops。

安裝

gops 并不包含在官方安裝包中,不屬于標準工具。需要手動獲取。

go get -u github.com/google/gops

簡單使用

goes 的使用方法非常簡單,我們看一下 help 文檔就可以了。

Go語言程序查看和診斷工具怎么用

最簡單的用法就是 gops,會直接列出正在運行的 Go 程序

Go語言程序查看和診斷工具怎么用

會依次列出 PID,PPID,程序名稱,編譯使用的 Go 版本號,程序路徑。信息比 jps 還詳細,不錯哦。

不止如此,gops 還能進行程序的診斷。

診斷

可能有人注意到了上面我的 memory-test 程序后面有個 * 號。這是因為程序中我加入了 gops 用的診斷支持代碼:

if err := agent.Listen(agent.Options{ShutdownCleanup:true}); err != nil {
 log.Fatalln(err)
}

對于這樣的程序,我們才能進行 gops pprof-cpu 和 gops pprof-heap 等命令。(stack, gc, setgc, memstats, version, stats, trace 等命令運行同樣需要加入上面的代碼)。

使用很簡單,就直接貼一點圖,不講了。

Go語言程序查看和診斷工具怎么用

Go語言程序查看和診斷工具怎么用

Go語言程序查看和診斷工具怎么用

因為 go pprof 命令有助于我們分析程序,相對來說更加常用。但是以往用起來相對要麻煩一些。現在有了 gops,分析 cpu 和內存使用就跟方便了。

gops 不僅支持本地使用,而且支持遠程。查看 agent.Options:

Go語言程序查看和診斷工具怎么用

可以設置 Addr 為 host:port 形式。我這邊設置為 ":9779"。將其部署到遠程服務器上,運行命令 gops pprof-heap 192.168.199.210:9779,可以看到:

Go語言程序查看和診斷工具怎么用

完全可行。 (注意,不僅只有 pprof-heap,gops 所有命令都支持遠程)

在我們的程序中加入診斷用代碼,當部署到遠程服務器上,也能很方便地分析程序情況。

以上就是關于“Go語言程序查看和診斷工具怎么用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿鲁科尔沁旗| 福海县| 阜新| 柳林县| 汾阳市| 丰宁| 滕州市| 乌海市| 浦北县| 依兰县| 武功县| 翁牛特旗| 天全县| 拉萨市| 昆山市| 云霄县| 来凤县| 唐河县| 宝丰县| 陆川县| 夏津县| 泗阳县| 象山县| 锦州市| 门头沟区| 贵德县| 揭西县| 浦东新区| 稷山县| 南华县| 邹平县| 延长县| 望城县| 略阳县| 锡林郭勒盟| 黄骅市| 鹤峰县| 连南| 新巴尔虎左旗| 芷江| 武强县|