Я работаю над POC и смог интегрировать 2 микросервиса с JaegerUI.
Запрос к конечной точке в serviceA вызывает конечную точку в serviceB и возвращает ответ.
Я использовал следующие зависимости:
spring.boot.version: 2.1.4.RELEASE
<groupId>io.opentracing.contrib</groupId>
<artifactId>opentracing-spring-jaeger-web-starter</artifactId>
<version>3.1.1</version>
<groupId>io.opentracing.contrib</groupId>
<artifactId>opentracing-spring-cloud-starter</artifactId>
<version>0.4.0</version>
Автоконфигурация Spring позаботится обо всем, поэтому просто добавлены необходимые свойства:
opentracing.jaeger.http-sender.url
opentracing.jaeger.service-name
opentracing.jaeger.enabled
opentracing.spring.cloud.async.enabled
Я хочу добиться следующего:
- Я хочу добавить журналы приложений в диапазон, чтобы они были видны в JaegerUI.
- Я хочу добавить несколько полей для охвата тегов, чтобы было удобно искать в JaegerUI.
- Кроме того, мне нужны spanId и traceId в журнале приложения.
- Можно ли искать в JaegerUI на основе spanId / traceId? Если да, то как?
Основываясь на ответе на вопрос ниже SO:
Как обогатить данные открытия Jaeger с журналами приложений (созданными slf4j) для Spring Boot?
Зависимость opentracing-spring-cloud-starter должна автоматически заботиться об отправке журналов приложений в диапазон в JaegerUI.
У меня есть запись журнала, как показано ниже в serviceA:
logger.info (отправка запроса в serviceB.);
Но указанный выше журнал не фиксируется в соответствующем диапазоне и не отображается в JaegerUI.
Любые предложения о том, как достичь вышеуказанных сценариев, приветствуются!