• golang pprof 内存分析


    use pprof to get application  memory  useage 

    add code in your main funciton

    import (
     "log"
     _ "net/http/pprof"
    )
    
    func main() {
      go func() {
              log.Println(http.ListenAndServe("localhost:6060", nil))
      }()
    }

    build and compile you application.

     let application run and send request  then run 

    #get  memory useage 
    go tool pprof -inuse_space http://127.0.0.1:6060/debug/pprof/heap
    go tool pprof ./yourbinaryname  localhost:6060/debug/pprof/profile

    your can use help ,or  top N to get top  memory use function .

    use "svg"  or "web"  to print  detail information .and need graphviz

    sudo yum  install -y graphviz 

    or mac 

    brew install graphviz

    if not generate svg ,down  tar file    and  use this command to get svg  ,after you can  open svg in  browser :

    go tool pprof  /Downloads/mv-w.1/pprof.xxx.localhost:6060.samples.cpu.001.pb

    if you are in production mode:

    just use wget :  

    wget http://localhost:9181/debug/pprof/heap
    wget http://localhost:9181/debug/pprof/profile?seconds=100 -O profile-pprof
    
    #then you can sz files to local and  generate  svg or png
    go tool pprof  heap
    go tool pprof profile-pprof
    
    
    then input  svg/png/help;
    

      

  • 相关阅读:
    Oracle-启动和关闭oracle的归档(ARCHIVELOG)模式
    Linux-数据表示方式
    Linux-21-30
    linux-1-10
    自律
    jenkins-修改系统时间
    jenkins-通过ssh username with private key配置节点服务器
    jenkins-slave开机自动启动
    mongodb-mongo使用
    mongodb-centos76yum安装mongodb
  • 原文地址:https://www.cnblogs.com/lavin/p/golang-pprof.html
Copyright © 2020-2023  润新知