У меня есть запрос, как показано ниже. Результат всегда предопределен как -
- Если в результате запроса есть 3 события и если в 3-м событии в качестве значения указано событие «доставлено», то вся транзакция должна быть возвращена как «ЗАВЕРШЕНО».
- Если присутствует 3-е событие и событие! = "Доставлено", то статус становится "В ОЖИДАНИИ"
- Если 3-е событие вообще отсутствует, то транзакция помечается как ОШИБКА
Мой запрос -
index=myindex OR index=myindex2 uuid=98as786-ffe6-4de1-929y-080e99bc2e6r (status="202") OR (TransactionStatus="PUBLISHED") | append [search index=myindex2 (logMessage="Producer created new event") event="delivered" OR event="processed" serviceName="abc" [search index=myindex uuid=98as786-ffe6-4de1-929y-080e99bc2e6r AND status="SUCCESS" AND serviceName="abc" | top limit=1 headerId | fields + headerId | rename headerId as message_id]]
Результат события -
Событие 1 - 202 Принято
Событие 2 - Адаптер Успех
Событие 3 - доставлено или с ошибкой или обработано
Моя приборная панель высокого уровня должна выглядеть следующим образом -
Завершено - 6378638
В ожидании - 2173
Ошибка - 6356
Уникальный идентификатор будет UUID, на котором будет выполняться счет.
Каким образом мы можем сделать это - eval? Уважать ? не уверен, так как я новичок, чтобы побаловать.
Пожалуйста, дайте мне знать, если потребуется дополнительная информация, если я что-то упустил.