主要问题:部分之前使用的包未自动升级。需要手动去get一下。
遇到问题的包:
1.https://github.com/petermattis/goid
重点吐槽下这个,因为go本身是不提供获取协程id的办法,所以都是用的非官方写的包。然后这些包获取goid的原理是直接访问 goroutine 结构体(常称为 g)在内存中的特定偏移量来获取 ID。不同 Go 版本中,这个结构体的布局(如字段顺序、大小)很可能发生改变。所以有golang版本升级的时候一定要升级goId这个包!!!
2.go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin
这个包是就是为什么要升级golang的原因。之前用过这个包的低版本,所以mod里面有记录。然后手动升级了一下就行了。