gops——Go 程序诊断分析工具

GitHub: https://github.com/google/gops

一个用于列出和诊断分析系统中正在运行的 Go 程序的命令行工具

安装

命令帮助

执行 查看帮助文档:

使用详解

为了能更好的分析程序,需要在我们的项目中加一行 诊断分析代码,用于统计分析程序问题。

其中, 支持更多的参数:

Addr

可选。为远程分析服务提供监听地址,例如: 。配置了该项,那我们可以在本机查看分析远程服务器上的 Go 程序,非常有帮助。

ConfigDir

可选。用于存放统计数据和配置的目录,默认为当前用户的主目录。也可以通过环境变量设置。具体参考代码:

ShutdownCleanup

可选。设置为 ,则在程序关闭时会自动清理数据。

NOTE: 如果不加 代码,那我们无法更深入的诊断程序,也就是说无法执行、等所有类似于 的子命令。

gops

直接执行 命令会列出本机所有正在运行的 Go 程序。

该命令会显示以下内容:

PID

PPID

程序名称

构建该程序的 Go 版本号

程序所在绝对路径

注意,列表中有个程序名称后面带了个 ,表示该程序加入了 的诊断分析代码。

gops

用法: 查看本机指定 Go 程序的基本信息

表示本机建立的监听(LISTEN),或者与远程服务器建立的链接(ESTABLISHED)

中的 是 提供的服务,

gops tree

用法: 以目录树的形式展示所有 Go 程序。

gops stack

用法: 用于显示程序所有堆栈信息,包括每个 goroutine 的堆栈信息、运行状态、运行时长等。

gops memstats

用法: 查看程序的内存统计信息

gops gc

用法: 查看指定程序的垃圾回收(GC)信息

gops setgc

用法: 设定指定程序的 GC 目标百分比

gops version

用法: 查看指定程序构建时的 Go 版本号

gops stats

用法: 查看指定程序的 数量、 值等信息

gops pprof-cpu

用法: 调用并展示 工具中关于 CPU 的性能分析数据,操作与 一致。

gops pprof-heap

用法: 调用并展示 工具中关于 heap 的性能分析数据,操作与 一致。

gops trace

用法: 追踪程序运行5秒,生成可视化报告,并可在浏览器中查看: http://127.0.0.1:61380

版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢。

Golang语言社区

游戏服务器架构丨分布式技术丨大数据丨游戏算法学习

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181024B202Q400?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券