Search

Home

Serwer wywołań automatycznych

Serwer wywołań automatycznych

Za automatyczne wywoływanie projektów odpowiada serwer stanowiący integralny element pakietu GRAVITY.INTEGRATION.

W zależności od potrzeb środowiska i preferencji użytkownika, serwer może być uruchamiany w jednej z dwóch form:

  • jako usługa systemu Windows,
  • jako aplikacja z interfejsem użytkownika.
Tylko jedna aplikacja serwerowa może działać jednocześnie. 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 dane dotyczące uruchomienia usługi, przebiegu jej działania oraz wyników wywoływanych wyzwalaczy.
  • C:\ProgramData\Caffeine Minds\Gravity\ServerLogs - zawiera log z danymi związanymi 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 uniknąć błędów związanych z brakiem gotowości innych komponentów systemu Windows (np. brakiem gotowości sieci) lub brakiem dostępu do innych systemów, z którymi usługa nawiązuje 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), zwłaszcza 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 z logowaniem jako “Lokalne konto systemowe”. Taka konfiguracja może powodować problemy z uprawnieniami wymaganymi do uzyskania dostępu do niektórych źródeł danych, takich jak katalogi na dyskach sieciowych, połączenia ODBC czy bazy danych wymagające logowania domenowego.

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 całej aplikacji, jak w przypadku usługi, a jedynie ponownego uruchomienia wskazanego triggera.

Po instalacji systemu GRAVITY aplikację serwera znajdziesz pod nazwą GravityTriggersRunner.exe. Aplikacja musi zostać uruchomiona z uprawnieniami administratora.

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

  • Log
  • Triggers control.

Zakładka Log

Zakładka Log przedstawia informacje o zdarzeniach zachodzących w aplikacji serwera. Rejestrowane jest uruchomienie serwera, jego wywołania, poszczególne kroki oraz rezultat działania wyzwalaczy. Log jest jest zapisywany równocześnie w plikach logu w katalogu C:\ProgramData\Caffeine Minds\Gravity\ServiceLogs. W samej aplikacji przechowywane jest ostatnich 1000 wierszy logu, który można w razie potrzeby wyczyścić 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 wyzwalaczach, w tym o ich aktualnym stanie, czasie ostatniego uruchomienia, liczbie poprawnie i błędnie wykonanych wywołań oraz o akcji przypisanej do każdego triggera.

image

Po uruchomieniu aplikacji oraz wczytaniu triggerów i projektów, system - o ile 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 udostępnia zestaw opcji umożliwiających zarządzanie jego stanem:

image
  • Opcja 1 - Ponowne włączenie - uruchamia trigger ponownie; jeśli zmieniła się definicja procesu, nie zostanie ona automatycznie wczytana,
  • Opcja 2 - Wyłączenie - zatrzymuje działanie triggera,
  • Opcja 3 - Przeładowanie - użyj tej opcji, gdy zmieniła się definicja procesu; pozostałe triggery będą działać bez zakłóceń,
  • Opcja 4 - Podgląd logu - umożliwia sprawdzenie historii wykonań triggera i diagnozę ewentualnych błędów.
  • 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 pojawiły się nowe lub zostały usunięte istniejące triggery i wczytuje zmiany do sytemu (nie powoduje restartu już istniejących, a jedynie doczytanie nowych i usunięcie nieistniejących).
icon
Aby lepiej zrozumieć działanie i konfigurację wyzwalaczy, zapoznaj się również z rozdziałem Wywołanie procesu GRAVITYWywołanie procesu GRAVITY.