Go中是否有一种直接的方式来获取有关GC和堆大小的信息,以便将它们暴露给监视仪表板.我看了一下运行时包,但似乎并没有那样做.理想情况下,这不需要任何开销,例如在分析模式下运行应用程序等,但应该是生产就绪.
您可以使用它GODEBUG=gctrace=1来获取连续输出,这将在运行时包中记录.
GODEBUG=gctrace=1
否则,您需要从runtime.MemStats和收集信息debug.GCStats.
runtime.MemStats
debug.GCStats