我在golang中构建了一个API。我想确定在处理请求的整个生命周期中,我的进展缓慢。我当前的解决方案是记录请求调用中每个功能的持续时间。所以,像这样:
start := time.Now()
defer func() {
log.Debugf("duration: %d", time.Since(start).Seconds())
}()
在每个函数的开头放置上面的代码很麻烦,并且会使代码库混乱。有没有更好的方法来完成我要尝试的工作?有什么我可以使用的工具吗?
我查看了github中的库,但是找不到更优雅的解决方案。
更新:
要添加到并发症中: