Как отслеживать промежуток через различные зависимости с Sleuth? - PullRequest
0 голосов
/ 04 сентября 2018

Я учусь отслеживать свои распределенные процессы через все микросервисы. Я играл с Sleuth, Zipkin и различными микросервисами, и это работает фантастически! Но когда я пытаюсь сделать то же самое в проекте, взаимодействующем между различными зависимостями, я не могу создать такое же поведение.

Это изображение показывает, как в настоящее время работают различные микросервисы. enter image description here

Это диаграмма микросервисов: enter image description here

И это изображение показывает, как работает приложение с зависимостями. enter image description here

Это диаграмма приложения с зависимостями: enter image description here

Интересно, возможно ли создать такое же поведение с использованием зависимостей, как с микросервисами?

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

Принимая входные данные @MarcinGrzejszczak в качестве ссылки, я решил использовать пользовательский диапазон:

Span remoteDependency = tracer.nextSpan()
                              .name("dependency_name") 
                              .start();

Где tracer - объект с автопроводкой из Trace:

@Autowired
private Tracer tracer;

Оба класса находятся в brave пакете

import brave.Span;
import brave.Tracer;

Результат:

Sample

Если вы хотите взглянуть на реализацию более подробно, вот пример: https://github.com/juanca87/sample-traceability-microservices

0 голосов
/ 24 сентября 2018

Да, когда вы создаете диапазон, вы можете установить имя сервиса. Просто позвоните newSpan.remoteServiceName(...)

...