golang pprof使用
代码
1package main
2
3import (
4 "log"
5 "net/http"
6 _ "net/http/pprof"
7)
8
9func main() {
10 go func() {
11 for {
12 log.Println("https://github.com/rushuinet/webdemo")
13 }
14 }()
15
16 http.ListenAndServe("0.0.0.0:8888", nil)
17}
在浏览器使用 http://localhost:8888/debug/pprof/ 即可访问
查看profile :
1.如果安装过graphviz直接提交过这步骤,否则可以到 http://www.graphviz.org/download/ 下载,并把bin加入到环境变量 windows 下载地址:https://graphviz.gitlab.io/_pages/Download/Download_windows.html
2.在命令行输入
1go tool pprof http://localhost:8888/debug/pprof/profile?seconds=30
此后的30秒进入收集profile信息的状态。30秒后进入pprof的交互模式,然后输入
1web
然后浏览器自动弹开到网页展示svg图
3.查看已经保存的profile文件
1go tool pprof profile C:\Users\user\pprof\pprof.samples.cpu.004.pb.gz
然后也是进入pprof的交互模式,然后输入web
4.还可以查看heap和goroutine
1go tool pprof http://localhost:8888/debug/pprof/heap
2go tool pprof http://127.0.0.1:8888/debug/pprof/goroutine
5.开启本地图型界面
1go tool pprof -http=:8889 http://localhost:8888/debug/pprof/profile
会自动打开http://localhost:8889/ui/
发布日期:2023-03-06 22:56 字数:77 用时
标签云
alpine(1) api网关(1) async(1) await(1) centos(4) cli(1) client-go(1) debug(1) docker(10) docker-compose(1) dockerfile(1) embed(1) es6(1) etcd(1) etcdctl(1) freemesh(2) git(6) go(5) go-zeus(5) goland(2) golang(7) grafana(2) grpc(5) grpcurl(1) homebrew(1) homedir(1) http(2) hugo(1) java(2) javascript(3) job(1) js(1) json(1) k8s(16) k8s部署指南(1) kubebuilder(1) kubectl(4) kubernetes(1) linux(2) localecompare(1) lombok(1) metrics(2) mock(1) mysql(1) npm(1) nsenter(1) nvm(1) pnpm(2) pprof(1) prettier(1) prometheus(2) protobuf3(1) protoc(1) qiankun(1) request(1) scss(1) servicemesh(1) spring(1) springcloud->freemesh(1) ssh(2) systemctl(1) tcpdump(1) typescript(2) vite(2) vscode(2) vue(8) vue-admin(2) vue3(1) webssh(1) xtermjs(1) xxl-job(1) yarn(1) zookeeper(1) 云原生(4) 云原生框架(1) 介绍(1) 单体架构->freemesh(1) 单元化(1) 博客(1) 压缩(1) 可观测(1) 后台管理系统(1) 命名规范(1) 多云多活(1) 如水网(1) 安全(1) 安装(1) 容器(2) 开发联调神器(1) 微前端(1) 微服务(2) 微服务架构->freemesh(1) 微服务框架(1) 快速开始(1) 控制面(1) 数据面(1) 文集(2) 服务发现(1) 服务网格(1) 流量泳道(1) 流量管理(1) 监控告警(1) 端口映射(1) 证书(1) 负载均衡(1) 配置(1)