小编典典

如何在日志中识别线程或类似线程?

go

我正在使用Go语言,回声框架进行开发。

我正在设计一个记录器,我想将线程ID的等价物记录到日志中,但是我不知道一个好的方法。

例如,如果同时进行多次访问的登录处理,则它在一侧成功,而在一侧失败。通过查看失败的日志无法确定。

经过检查,Go语言中的goroutine的id存在,但我不应该得到它,最初据说goroutine在同一线程中是不同的。

如何识别线程?还是有包装将它们放入日志中?

如果我用错了表达,对不起,因为英语不是我的母语。谢谢。


阅读 274

收藏
2020-07-02

共1个答案

小编典典

Go例程中没有等效于GoLang中的线程ID。

您可能要做的是创建一个上下文并为其添加一个唯一的ID(最好是请求ID)。让所有函数也接受一个上下文。让记录器库获取上下文并打印唯一ID。通过以这种方式使用上下文,您甚至可以共享日志信息

2020-07-02