Przejdź do treści

Monitorowanie

Jednym z głównych założeń EDA jest możliwość łatwego śledzenia działania mechanizmu komunikatów. Wszystkie operacje wysłania komendy, zgłoszenia zdarzenia, pobrania komunikatu przez handler, przetworzenia komunikatu i błędów przetwarzania są zapisywane w autonomicznej bazie danych opartej na silniku PostgreSQL. Dzięki temu buduje się kompleksowy rejestr działania EDA.

Monitor EDA

Note

Z uwagi na wydajność okna, brak wybranego filtru ogranicza liczbę wyświetlanych rekordów do ostatnich 5000 wpisów.

Jest głównym widokiem do monitorowania systemu. Lista wyświetla wyemitowane komendy i zdarzenia zaczynając od najnowszych.

Okno pozwala na odfiltrowanie komunikatów do wybranego typu, metody obsługującej i konektora.

Filtry predefiniowane

W celu ułatwienia monitorowania problemów zostały zdefiniowane dwa standardowe filtry:

  • Przetworzone z błędem - który filtruje listę komunikatów tylko do tych, które nie zostały poprawnie przetworzone.
  • Nieprzetworzone - dla zawężenia listy tylko do komunikatów, które pojawiły się na szynie komunikatów ale nie zostały przetworzone przez żaden handler.
  • Wstrzymane - zawężenie listy komunikatów do tych, które zostały wstrzymane przez kolejkę logiczną.

Note

Ze względu na asynchroniczność przetwarzania komunikatów, filtr Nieprzetworzone może również wyświetlać komunikaty, które są w kolejce do przetworzenia.

Filtrowanie komunikatów / Filtrowanie treści komunikatu

W monitorze EDA, umożliwiamy filtracje komunikatu, która polega na wyszukaniu wszystkich komunikatów, które zawierają w treści, podanany ciąg znaków.

Filtrowanie komunikatu

Dla tego przykładu zostały wybrane wszystkie wiadomości zawierające słowo Faktura

Funkcja filtracji treści komunikatu służy do zawężania treści, wybierając tylko te linijki, które zawierają dowolny ciąg znaków podany w polu do filtracji. Dopuszcza się wpisania kilku wyrazów po spacji.

Filtrowanie treści komunikatu

Dla tego przykładu, komunikat został skrócony do linikek zawierających TypeName oraz Ref.

Ponawianie komunikatów

Każdy komunikat z listy może zostać ponowiony za pomocą akcje Ponowienie komunikatu.

Uwaga!

Ponowienie komunikatu tworzy nowy komunikat o zadeklarowanej treści.

Możliwe jest ponowne wysłanie wielu komunikatów poprzez zaznaczenie ich za pomocą przycisku "INSERT" w monitorze EDA. Po zaznaczeniu więcej niż jednego komunikatu, na przycisku "Wyślij ponownie" pojawi się ilość zaznaczonych wierszy. Podczas ponownego wysyłania jednego komunikatu dostajemy możliwość zmian jego treści, poprzez wyświetlenie edytora Treści komunikatu przed ponownym wysłaniem. W przypadku wielu komunikatów wyświetli się tylko pytanie, czy na pewno chcesz wysłać ponownie wybrane komunikaty?. W tym przypadku nie mamy możliwości modyfikacji treści poszczególnych komunikatów.

Kolejki logiczne

Do monitorowania oraz obsługi funkcionalności kolejek logicznych w monitorze EDA służą następujące funkcje:

  • Pola :

    • Kolejka fizyczna

    • Kolejka logiczna

  • Filtry :

    • Filtr kolejki logicznej

    • Ukrywanie komunikatów wstrzymanych przez kolejkę logiczną

  • Akcje :

    • Wysyłanie ponownie zaznaczonego komunikatu i wszystkich późniejszych. Ponawiamy najświeższe komunikaty

Gdy na kolejce logicznej wystąpi błąd wszystkie późniejsze komunikaty wysłane na daną kolejkę logiczną zostaną wstrzymane i wyświetlane w EDA monitorze ze statusem : Wstrzymany przez kolejkę logiczną.

Wysłanie ponownie pojedynczego komunikatu na kolejkę logiczną zdejmie z niej blokadę i wykona próbę przetworzenia wysłanej komendy. Jeżeli Wystąpi błąd kolejka zostanie ponownie zablokowana.

Istnieje możliwość wysłania ponownie zaznaczonego komunikatu i wszystkich późniejszych, na danej kolejce logicznej za pomocą akcji Wyślij ponownie => Kolejkę logiczną 'Nazwa kolejki'. Odblokowanie kolejki jest przypisywane wówczas TYLKO do pierwszego ponawianego komunikatu. Zostanie wyświetlony komunikat o ilości komunikatów do ponowienia.

WAŻNE!

Za pomocą akcji Wyślij ponownie => Kolejkę logiczną 'Nazwa kolejki' ponawiane są tylko najświeższe komunikaty. tzn. Jeżeli w monitorze EDA wyślemy ponownie komunikaty z kolejki logicznej. To komunikaty ponowione (1) nie będą brane pod uwagę podczas kolejnej próby ponownego wysłania. Możliwe do wysłania są komunikaty najświeższe (2). Komunikaty ponowione można odfilatrować za pomocą filtra Ukryj => ponowione.

Tryb Live

Tryb live monitora EDA umożliwia cykliczne i automatyczne odświeżanie dziedziny wyświetlanych komunikatów. Po odświeżeniu dziedziny widok jest automatycznie ustawiany na samej górze listy komunikatów i zaznaczany jest pierwszy rekord. Konfiguracja trybu Live odbywa się poprzez podanie odpowiednych parametrów w oknie konfiguracyjnym.

Parametry te zapisywane są per dany operator i odczytywane przy każdym uruchomieniu monitora EDA. Parametry można aktualizować nawet podczas gdy tryb live jest uruchomiony. Zostaną one zaktualizowane i zastosowane natychmiastowo.

Włączenie trybu Live odbywa się poprzez kliknięcie akcji Włącz tryb live. Możliwe jest zapauzowanie tego trybu poprzez kliknięcie akcji Wyłącz tryb live, która pokaże się w miejscu w/w akcji. Po wyłączeniu okna monitora Eda tryb live zostanie automatycznie wyłączony.

Usuwanie komunikatów

Monitor EDA umożliwia usuwanie komunikatów z bazy danych za pomocą 2 dostępnych akcji:

  • Usuwanie komunikatów - Usuwa wszystkie komunikaty starsze od podanej podczas usuwania.

  • Usuwanie zaznaczonych komunikatów - Usuwa tylko komunikaty zaznaczone na gridzie monitora EDA

!!! WARNING Uwaga! Komunikaty usuwane za pomocą wyżej podanych metod usuwają je tylko z bazy danych. Komunikaty te NIE są usuwane z kolejki przetwarzania! Aby usunąć komunikaty z kolejki przetwarzania należy: - Dla wbudowanego brokera komunikatów: Jedyna opcja to restart Neosa, wówczas komunikaty nie będą przetwarzane, chyba, że wyśle się je do ponownego przetworzenia - RabbitMQ : należy mieć zainstalowany management plugin. Następnie przejść do panelu zarządzania (domyślny adres : http://node-hostname:15672/) do zakładki Queues i wyszukać interesującą nas kolejkę. W sekcji Purge znajdziemy akcję aby usunąć WSZYSTKIE komunikaty z danej kolejki na rabbicie.

Historia przetwarzania

Każdy komunikat jest przypisany do kontekstu komunikacyjnego (tzw. konwersacja), który pozwala powiązać sekwencję komunikatów zależnych od siebie.

W widoku historii przetwarzania wyświetlane są wszystkie komunikaty, i informacje o ich przetworzeniu, związane wspólnym kontekstem komunikacyjnym.

W przypadku błędów w przetwarzaniu pojawiają się również szczegółowe informacje o treści i stosie wywołania handlera, w którym wystąpił błąd.

Zdarzenia z bazy danych

Okno wyświetla listę zdarzeń bazodanowych oczekujących na wyemitowanie na szynie komunikatów i informacje o błędzie, kiedy zdarzenie nie mogło zostać wyemitowane.