Мониторинг бизнес-логики приложения с информацией отслеживания zipkin - PullRequest
0 голосов
/ 09 ноября 2018

На самом деле у меня есть микросервисная архитектура следующим образом

enter image description here

Таким образом, у меня есть 4 микросервиса, и для каждого микросервиса я отправляю уведомление zipkin, когда запускается и заканчивает свою задачу.

Я должен контролировать свой продукт, чтобы убедиться, что все запрошенные заказы будут иметь

  • Платежи обработаны (оплачены или отменены)
  • Оформление заказа, созданное в базе данных и доступное для консультации
  • Я отправил клиенту электронное письмо с уведомлением о покупке

zipkin, как система отслеживания, уже владеет всей этой информацией, потому что она следит за оформлением заказа с самого начала до конца, мне интересно, как я могу запросить у zipkin все проверки, которые были обработаны JAVA REST API микросервис и не обрабатывался хотя бы одним из других ( СПРАВОЧНИК ОПЛАТЫ , СОЗДАТЕЛЬ ПРОДАЖ * и УВЕДОМИТЕЛЬ ПО ЭЛЕКТРОННОЙ ПОЧТЕ

Как я могу запросить у zipkin, какие проверки не были обработаны всеми другими микросервисами после REST API ?

Ответы [ 3 ]

0 голосов
/ 10 ноября 2018

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

P.S. Я участник Zipkin.

0 голосов
/ 26 декабря 2018

Это не ответ на вопрос, как добиться этого с помощью zipkin, но да для всей проблемы.

Если у вас есть транзакция, которая не завершила ее шаги, возможно, у вас есть две из следующих проблем

Некоторым микросервисам не удалось доставить событие следующему и не выяснить это

Вы должны убедиться, что доставка хотя бы один раз здесь, используя Kafka, вы должны ждать, пока сообщение не будет отправлено на сервер, например

Микросервис судьбы получил сообщение и не обрабатывает его

Вы должны убедиться, что ваше приложение обрабатывает то, что должно, вы можете отслеживать базу данных, если транзакции есть, или использовать какой-либо инструмент, такой как LinkedIn burrow, для мониторинга вашей группы сообщений Kafka, если вы интегрируетесь с помощью Kafka.

Заключение состоит в том, чтобы вместо этого пытаться контролировать все, как только создается впечатление, что создание специализированных мониторов для каждого шага будет более настойчивым и простым в разработке.

0 голосов
/ 09 ноября 2018

мы также используем use zipkin, но не можем запрашивать zipkin в качестве лося. мы можем просто нажать на каждый сервис, который отображается на zipkin и получить больше информации, как показано на рисунке ниже.

after click the service

...