Search

Home

Serwer wywołań automatycznych

Serwer wywołań automatycznych

Nad automatycznym wywoływaniem projektów czuwa aplikacja serwera, który jest integralną częścią pakietu aplikacji GRAVITY.INTEGRATION.

W zależności od wymagań i preferencji serwer jest dostępny w dwóch formach:

  • jako usługa systemu windows
  • jako aplikacja z interfejsem użytkownika
Tylko jedna aplikacja serwerowa może działać w tym samym czasie. Musisz wybrać czy używasz aktualnie GravityTriggerRunner czy usługi systemu windows.

Serwer jako usługa systemu windows (gravity.integration service)

Usługa jest instalowana w systemie wraz z oprogramowaniem GRAVITY. Usługa nie posiada interfejsu graficznego ale można śledzić działanie wykonanych wyzwalaczy w plikach logów, które generują się dla każdego dnia.

Pliki logów dostępne są domyślnie w katalogach:

  • C:\ProgramData\Caffeine Minds\Gravity\ServiceLogs- log z informacjami o działaniu usługi. Zawiera szczegółowe informacje o starcie usługi oraz o przebiegu uruchomienia i rezultacie wywoływanych wyzwalaczy
  • C:\ProgramData\Caffeine Minds\Gravity\ServerLogs - zawiera log z informacjami związane z pracą serwera www hostującego zdefiniowane usługi webService

Usługa domyślnie instalowana jest w trybie uruchamiania ręcznego i jest wyłączona.

image

Możesz to zmienić w właściwościach usługi pole typ uruchomienia.

image

Zalecanym sposobem uruchomienia usługi jest ustawienie trybu Automatyczny (opóźnione uruchomienia). Obniżenie priorytetu uruchomienia usługi pozwala na uniknięcie błędów związanych z brakiem gotowości innych komponentów systemu windows (np: gotowość sieci) lub brakiem dostępu do innych systemów gdzie usługa tworzy połączenie już w momencie startu (bazy danych - Wywołanie automatyczne przez mechanizm notyfikacji bazy danych, brokery - Wywołanie automatyczne przez odebranie wiadomości od brokera RabbitMQ i inne serwery), tym bardziej jeśli znajdują się na tym samym serwerze.

Usługa jest przewidziana do użycia w środowisku produkcyjnym, ale nic nie stoi na przeszkodzie, aby używać jej trybie deweloperskim.

Używając usługi musisz pamiętać, o tym aby zrestartować usługę po jakiejkolwiek modyfikacji projektów lub triggerów, ponieważ w przeciwnym wypadku zmiany nie będą widziane przez serwer
Należy pamiętać, że po każdorazowej aktualizacji systemu usługa jest instalowana ponownie i będzie działać w trybie uruchomienia w jakim została ustawiona przed aktualizacją systemu.

Usługa domyślnie jest instalowana jest z logowaniem jako “Lokalne konto systemowe” może to powodować problemy z uprawnieniami niezbędnymi do podłączenia się do używanych źródeł danych (katalogi na dysku sieciowym, ODBC, bazy danych z logowaniem domenowym, itp).

W takim przypadku należy zmienić sposób logowania usługi w właściwościach na zakładce “Logowanie” i wskazać konto użytkownika posiadające niezbędne uprawnienia.

image
icon

Należy pamiętać, aby po aktualizacji systemu ponownie zmienić konto. System GRAVITY nie pobiera i nie przechowuje lokalnych kont użytkowników.

Serwer jako aplikacja (GravityTriggerRunner)

Przewidziana do działania w środowisku developerskim. Dzięki interfejsowi graficznemu sprawdzenie poprawności wykonywania projektów, restartowania, wczytania nowych triggerów i projektów jest dużo prostsze. Nie wymaga restartu aplikacji jak w przypadku usługi, a jedynie wskazanego triggera.

Aplikacje serwera znajdziesz po instalacji systemu GRAVITY pod nazwą GravityTriggersRunner.exe i musi ona być uruchomiona z uprawnieniami administratora.

Aplikacja GravityTriggerRunner składa się z dwóch zakładek:

  • Triggers control
  • Log

Zakładka Log

Zakładka Log przedstawia informacje zdarzeniach zachodzących w aplikacji serwera. Rejestrowane jest uruchomienie serwera jak i wywołanie, poszczególne kroki oraz rezultat działania wyzwalaczy. Log jest jest zapisywany równocześnie do plikach logu w katalogu: C:\ProgramData\Caffeine Minds\Gravity\ServiceLogs. W samej aplikacji utrzymywane jest ostatnich 1000 wierszy logu, a na żądanie może być czyszczony przyciskiem Clear.

image

Zakładka Triggers Control

Zakładka zawiera listę zdefiniowanych wyzwalaczy, które mają zaznaczony przełącznik Enabled na konfiguracji triggera. Triggery są zgrupowane w katalogi, które można zwijać i rozwijać kliknięciem myszki. Lista zawiera podstawowe informacje o wyzwalacza wraz z informacją w jakim stanie aktualnie się znajduje, czasach ostatniego uruchomienia, ilości pozytywnie i błędnie wykonanych wywołań oraz akcję dla każdego triggera.

image

Po uruchomieniu aplikacji, zaczytaniu triggerów i projektów, system jeśli nie wystąpił żaden błąd w definicji projektu powiązanego z wyzwalaczem ustawia triggery w statusie Run.

Trigger może znajdować się w następujących stanach

  • Run → włączony i oczekujący na wywołanie
  • Processing → w trakcie przetwarzania wywołania
  • Stop → zatrzymany, wywołanie triggera nie jest możliwe
  • Restarting → w trakcie restartowania

Każdy trigger ma zestaw opcji pozwalających na zarządzanie jego stanem:

image
  • może zostać ponownie włączony (opcja 1) - jeśli się zmieniła definicja procesu nie zostanie ona ponownie zaczytana
  • może zostać wyłączony (opcja 2)
  • może zostać przeładowany (opcja 3) - użyj jeśli zmieniła się definicja procesu. Pozostałe triggery pracują bez zakłóceń
  • można podejrzeć log wykonań triggera (opcja 4) - przydatne w sprawdzeniu powodu błędnego wywołania
  • image

    Podwójne kliknięcie w zapis logu pozwala zobaczyć szczegóły wykonania.

Nad listą widnieją przyciski odpowiadające za akcje globalne dla całej listy:

image
  • Refresh list → odświeża dane listy, nie powoduje wczytania nowych danych po modyfikacji projektów lub triggerów
  • Restart All → restartuje wszystkie triggery widniejące na liście zaczytując ponownie ich konfiguracje oraz konfiguracje projektów
  • Update Triggers → sprawdza czy doszły nowe lub zostały usunięte jakieś triggery i wczytuje je do sytemu (nie powoduje restartu już istniejących, a jedynie doczytanie nowych i usunięcie nie istniejących)
icon
W celu przygotowanie oraz zrozumienia zagadnienia wyzwalaczy zapoznaj się również z rozdziałem Wywołanie procesu GRAVITYWywołanie procesu GRAVITY.