Zipkins (в приложении Spring boot) не хранит все идентификаторы трассировки, когда я отправляю 10 запросов из приложения в другое приложение - PullRequest
1 голос
/ 04 марта 2020

Я использую ZIPKINS для распределенной трассировки. Проблема заключается в том, что я пытаюсь протестировать ZIPKINS, посылая 10 запросов за один раз в эту службу из другой службы, используя l oop, проверил пользовательский интерфейс на наличие журналов, получил только 2 журнала, т.е. для первого и последнего я не получил журналы оставшихся запросов. Можете ли вы помочь выяснить, в чем проблема в этом. Идентификаторы трассировки и идентификаторы span генерируются для всех запросов, я не могу увидеть, что журналы одинаковы. Полученные журналы:

2020-03-04 17: 38: 57.379 INFO [, 7c8075c14691f988,43521ecc69b84d84, true] 10576 --- [nio-8081-exe c -7] c .ifservice.ProducerServiceImpl: полученное сообщение = 'ServiceInvocation [communicationID = COMM_0121, 2020-03-04 17: 38: 57.438 INFO [, 7552e8c3d87d013a, 89769451aafec094, false] -

10576 --- [nio- 8081-exe c -8] c .ifservice.ProducerServiceImpl: полученное сообщение = 'ServiceInvocation [communicationID = COMM_0122, 2020-03-04 17: 38: 57.519 INFO [, 79f38c25211dfab8,49ea12575eab0bcf, false] 10576 --- [nio-8081-exe c -2] c .ifservice.ProducerServiceImpl: получено -

Message = 'ServiceInvocation [communicationID = COMM_0123, 2020-03-04 17: 38: 57.626 INFO [, 294da34664fac032, ad98ed1fbce485df, false] 10576 --- [io-8081-exe c -10] c .ifservice.ProducerServiceImpl: полученное сообщение = 'ServiceInvocation [communicationID = COMM_0124, 2020-03-04 17: 38: 57.879 INFO [, 8763a2ca3d6dfc44,9871d046cd7eacf1, false] 10576 --- [nio-8 081-exe c -1] c .ifservice.ProducerServiceImpl: полученное сообщение = 'ServiceInvocation [communicationID = COMM_0125, 2020-03-04 17: 38: 57.923 INFO [, be1e3a490e114e92,2435ee34d215459 c, false] - false

10576 --- [nio-8081-exe c -6] c .ifservice.ProducerServiceImpl: полученное сообщение = 'ServiceInvocation [communicationID = COMM_0126, 2020-03-04 17: 38: 57.980 INFO [, 21855ca20670de31,6213a3fdc0a23189, false] 10576 --- [nio-8081-exe c -3] c .ifservice.ProducerServiceImpl: полученное сообщение = 'ServiceInvocation [communicationID = COMM_0127, 2020-03-04 17: 38: 58.043 INFO [, 4d9795e7d2dbf50 c, 21f83b3384381833, false] 10576 --- [nio-8081-exe c -4] c .ifservice.ProducerServiceImpl: Receive

1 Ответ

0 голосов
/ 04 марта 2020

Формат журнала: [имя приложения, traceId, spanId, экспорт]

Таким образом, последнее значение true/false фактически является значением экспорта, что означает :

Export - Это логическое свойство, которое указывает, был ли этот журнал экспортирован в агрегатор, такой как Zipkin. Zipkin выходит за рамки этой статьи, но играет важную роль в анализе журналов, созданных Sleuth.

Поскольку экспортные значения ложные, zipkin не получает эти значения. Это ожидаемое поведение.


Root Причина : некоторые журналы экспортируются, а некоторые нет из-за частоты дискретизации. Не все журналы предназначены для отправки. В любом случае, если вы хотите, чтобы все журналы были сэмплированы, попробуйте добавить это свойство:

spring.sleuth.sampler.probability=1.0

Ссылка: sleuth-not-send-trace-information-to-zipkin

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...