Sleuth traceId无法在Quartz作业中传播

时间:2020-06-03 08:00:45

标签: spring spring-boot quartz-scheduler spring-cloud-sleuth

我正在使用spring-boot-starter-quartz进行Spring Boot项目,最近我添加了spring-cloud-starter-sleuth为每个请求添加traceId。但是,当作业由系统自动触发时,它无法像在控制器或服务中调用操作时那样传播traceId。我是否必须自定义侦探记录或其他内容以将traceId传播到其他服务?

样本: 当我通常在控制器中调用时,侦探工作正常,并且traceId已传播到其他服务

2020-06-03 14:37:02.148 [my-scheduler,1966e2d37a2d7713,1966e2d37a2d7713] JobSchedulerController.startScheduleJob:97 17812 --- [nio-8201-exec-3] c.p.s.controller.JobSchedulerController  : Started scheduler job with id 2

但是,当我的工作自动触发时,不会传播traceId,因此其他服务也不会具有该traceId。

2020-06-03 14:37:02.219 [my-scheduler,,] JobListener.jobToBeExecuted:30 17812 --- [ryBean_Worker-2] c.p.s.listener.JobListener        : DEFAULT.SampleJob is going to start...

1 个答案:

答案 0 :(得分:0)

我通过使用spring-boot-starter-parent Hoxton.SR5升级到spring-cloud-dependencies 2.3.0.RELEASE解决了这个问题。

相关问题