golang 使用gops进行程序监控

首先需要下载 对应的第三方包

gops

go get -u github.com/google/gops

运行上面命令进行 下载对应包

go install github.com/google/gops

下载完成后安装对应包 会生成 gops.exe 文件

请放到系统环境变量里面 如果运行install正常来说应该生成在%GOPATH%/bin/下面 

看到官方给了一个测试例子

package main

import (
    "log"
    "time"

    "github.com/google/gops/agent"
)

func main() {
    if err := agent.Start(); err != nil {
        log.Fatal(err)
    }
    time.Sleep(time.Hour)
}

这玩意,一开始也不知道干嘛的。后面发现如果不起这个程序的话。找不到对应的 程序日志


运行 gops 查看当前运行的所有的golang相关的程序


PID 程序运行名字  绝对路径

 6488    go.exe   (D:\Go\bin\go.exe)
15728*  test.exe        (C:\Users\root\AppData\Local\Temp\go-build178282450\command-line-arguments\_obj\exe\test.exe)
10588   gops.exe        (D:\Go\bin\gops.exe)


如果有人心细的话 会发现 有个 15728* 后面带了个 *号 我也是后面才知道带 * 才可以抓取对应程序的运行数据

当然你可以指定参数执行

//跟踪堆栈 没看出来效果直接报错了。不清楚咋回事 用的最新版的包
gops stack -p=<PID> 


//打印当前内存状态
gops memstats -p=<PID>




  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一名路过的小码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值