В настоящее время я работаю над решением для микросервисов моей компании, которое использует Spring Cloud Edgware.SR1 . Это решение включает в себя следующие основные вкусы:
api-gateway(Zuul)
, service-discovery(Eureka)
, uaa
, zipkin-server
и business logic
.
Я пытаюсь обеспечить хорошую трассировку для всех запросов в нашей системе. В пользовательском интерфейсе Zipkin я вижу трассировку для запроса, который запускается в api-шлюзе, проходящем через uaa к нашему сервису бизнес-логики. Но запросы к Эврике отсутствуют в след. Вместо этого существует отдельная трасса с одним диапазоном для service-discovery
конечная точка http://eureka/apps/**
.
У меня была такая же проблема с uaa
запросом к конечной точке http://user/
, и я решил ее, добавив TraceRestTemplateInterceptor
к нашему клиенту Oauth2.
Однако мне было трудно переопределить EurekaHttpClient
и добавить упомянутый перехватчик.
Есть ли другой способ передать идентификатор трассировки клиентам Eureka?