kratos 框架tracing,以及集成gin的tracing
kratos 自身的grpc框架关于tracing的设置
- 加入中间件选项时候一定不要顺序写反,trace.Sever在前,logging.Server在后,否则没有traceId
func NewGRPCServer(c *conf.Server, greeter *service.RobotServiceService, logger log.Logger) *grpc.Server {
var opts = []grpc.ServerOption{
grpc.Middleware(
middleware.Chain(
recovery.Recovery(),
tracing.Server(),
logging.Server(logger),
metadata.Server(),
validate.Validator(),
),
),
}
......
}
kratos 集成gin框架关于 tracing问题
- 再router的根入口,集成你想要的中间件, 在httpServer 初始化中间件没有用,也要注意顺序
rootGroup := api.engine.Group("/api")
rootGroup.Use(kgin.Middlewares(recovery.Recovery(), tracing.Server(), logging.Server(api.logger)))
版权声明:本文为weixin_38805083原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。