猿问

如何持续分析我的 go 应用程序?

我的应用程序存在一些内存泄漏,这导致应用程序经常崩溃。因此,我开始使用 pprof 分析我的应用程序,但我只能在点击 URL 的情况下获取配置文件。有什么方法可以每隔一定时间查找配置文件,以便我可以分析应用程序发生的情况?



牧羊人nacy
浏览 96回答 1
1回答

LEATH

我希望有一个很酷的标志来 pprof 异常转储(如核心转储),但找不到任何东西。在此之前,我想到了两个选择:外部:curl pprof 定期使用 cron 或其他驱动程序内部:从程序内部定期编写 pprof外部的$&nbsp;curl&nbsp;http://localhost:8080/debug/pprof/heap&nbsp;>&nbsp;heap.0.pprof内部的ticker := time.NewTicker(1 * time.Hour)go func() {&nbsp; &nbsp; for {&nbsp; &nbsp; &nbsp; &nbsp;select {&nbsp; &nbsp; &nbsp; &nbsp; case <- ticker.C:if err := pprof.WriteHeapProfile(f); err != nil {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log.Fatal("could not write memory profile: ", err)&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp;}&nbsp; &nbsp; }}()
随时随地看视频慕课网APP

相关分类

Go
我要回答