每次调用计划的可运行任务时创建一个新的跟踪 ID

Create a new trace id everytime a scheduled runnable task is invoked

在我的代码中,我使用 task schedular 的 schedule 方法安排了一个 运行nable 任务。我经历了这个 link - https://docs.spring.io/spring-cloud-sleuth/docs/current-SNAPSHOT/reference/html/integrations.html#sleuth-runnablecallable-integration。我是这样实现的。当前状态是 - 对于任何计划都会创建一个跟踪,并且相同的跟踪 ID 将用于此计划调用的所有 运行s,尽管跨度是新的。但我希望每个 运行 都应该有自己唯一的跟踪 ID。有一种创建新跟踪的跟踪器方法,但是在 sleuth 中有什么方法可以避免手动创建新跟踪?我正在使用 2.0.x 版本。

  1. 我使用 tracer 的 newtrace 方法创建了一个新的跟踪,returns 一个跨度。
  2. 开始这个跨度。
  3. 然后使用 withspaninscope 方法在 currentscope 中添加了这个 span。
  4. 已启动可运行任务的作用域跨度并完成了这两个跨度。

成功了。