...
- konfiguracji:
- bazy danych,
-parametrów parametrów systemu,
-logów logów,
- funkcji eksperymentalnych - danych:
-pliki logów,
-zainstalowane wtyczki,
-katalog tymczasowy,
-mapy procesów.
...
Z kolei w przypadku instalowania nowego systemu instalatorem wystarczy podać ścieżkę katalogu domowego oraz konfigurację bazy danych w oknie instalatora.
Automatyczna instalacja wtyczek
Istnieje możliwość automatycznego instalowania wtyczek umieszczonych w katalogu domowych (od wersji 4.1.2). W katalogu <home-dir>/config/plugins należy umieścić pliki .jar wtyczek które chcemy instalować przy starcie systemu.
Zasady aktualizacji w zależności od wersji wtyczek już zainstalowanych:
| Wersja w katalogu domowym | Wersja zainstalowana | Akcja | ||||||
|---|---|---|---|---|---|---|---|---|
| 1.0.0 | brak |
| ||||||
| 1.0.0-SNAPSHOT | brak |
| ||||||
| 1.0.1 | 1.0.0 |
| ||||||
| 1.0.0 | 1.0.0 |
| ||||||
| 1.0.0 | 1.0.1 |
| ||||||
| 2.0.0 | 1.0.0-SNAPSHOT |
| ||||||
| 1.0.0-SNAPSHOT | 2.0.0 |
|
Zmiana ustawień katalogu domowego
...
Lokalizacja: PlusWorkflow w 'Administracja' -> 'Konfiguracja systemu' -> 'Parametry systemowe'
| Status | ||
|---|---|---|
|
Od wersji 3.2.22 zalecanym sposobem zmiany parametrów jest ich zmiana bezpośrednio w PlusWorkflow.
Natomiast w starszych wersjach można to zrobić poprzez własne ustawienia wartości parametrów w <home-dir>/config/PlusWorkflow.conf
Konfiguracja logów
Lokalizacja pliku konfiguracyjnego: domyślna lokalizacja (automatycznie
Na początku system sprawdza, czy w katalogu domowym w folderze config znajduje się plik log4j2.xml i z niego bierze konfigurację.
Jeżeli plik nie istnieje, to konfiguracja brana jest z projektu plusworkflow-web/resources z pliku log4j2-prod.xml (katalog WEB-INF/classes).
W celu modyfikacji pliku konfiguracyjnego należy przekopiować plik log4j2-prod.xml do folderu config w katalogu domowym i zmienić nazwę na log4j2.xml. Po modyfikacji należy zrestartować system.
Lokalizacja plików z logami:
Domyślnie pliki z logami zapisywane są do folderu logs w katalogu domowym.
Ścieżkę można zmienić ustawiając parametr plusworkflow.logs w pliku plusworkflow-home.properties lub zmieniając ścieżki w pliku konfiguracyjnym w wybranym appenderze.
Konfiguracja funkcji eksperymentalnych
Lokalizacja: domyślna lokalizacja (opcjonalnie odczytywana przez system) pliku konfiguracyjnego Log4j to to <home-dir>/config/Log4jexperimental.xml .
"Szablon" pliku Log4j.xml najlepiej pobrać z czystego projektu systemu. Jeżeli system nie znajdzie powyżeszego pliku, spróbuje go odczytać z web.xml jako parametr log4jConfigLocation .
| Code Block | ||||
|---|---|---|---|---|
| ||||
<context-param>
<description>Lokalizacja pliku konfiguracyjnego log4j. (Dla plików na dysku: "file:C:/log4j.xml")</description>
<param-name>log4jConfigLocation</param-name>
<param-value>file:/home/nazwa_uzytkownika/Suncode/Home/config/Log4j.xml</param-value>
</context-param> |
Ścieżkę katalogu do zapisu logów można zmienić ustawiając parametr plusworkflow.logs w pliku plusworkflow-home.properties (opisany w Zmiana ustawień katalogu domowego).
| Code Block | ||||
|---|---|---|---|---|
| ||||
plusworkflow.logs=/home/logs |
properties.
Funkcje eksperymentalne uruchamiane są poprzez dodanie w nowej linii wpisu reprezentującego daną funkcje:
- <id funkcji>=<true/false>
Przykładowa zawartość pliku experimental.properties z uruchomionymi dwoma funkcjami:
| Code Block |
|---|
jakasFunkcja1=true
jakasFunkcja2=true |
Lista funkcji eksperymentalnych jest zmienna i obecnie dostępne funkcje zadeklarowane są klasie enumeracyjnej ExperimentalFeature jako parametr konstruktora
- np. dla JAKAS_FUNKCJA_1( "jakasFunkcja1" ) identyfikatorem parametru jest jakasFunkcja1
Konfiguracja mechanizmu monitorowania wątków (plik db.properties)
Lokalizacja: parametry w pliku <home-dir>/config/db.properties
| Code Block |
|---|
# [Threads monitoring configuration]
# Global toggle for threads monitoring mechanisms (default false)
db.threads-monitoring.enabled=false
# Starts tasks periodically dumping threads states to Concurrent logs (default false)
db.threads-monitoring.task.enabled=false
# Delay in seconds to start task after system start (default 240)
db.threads-monitoring.task.delay=240
# Period in seconds between each threads states dumps (default 60)
db.threads-monitoring.task.period=60
# Enable logging of shark process lock attempts that could lead to deadlock exception (default false)
db.threads-monitoring.warnings.dangerousProcessLocks=false
# Enable logging of redundant shark transaction creation
# Such transactions can lead to older data access and faster shark transaction pool drain (default false)
db.threads-monitoring.warnings.redundantSharkTransactions=false
# Enable logging of redundant hikari connection allocations
# Such allocations can lead to faster hikari connection pool drain (default false)
db.threads-monitoring.warnings.redundantHikariConnections=false |
| Note |
|---|
Parametr db.threads-monitoring.enabled steruje globalnie całym mechanizmem. Jeżeli jest wyłączony, to pozostałe funkcje o prefixie db.threads-monitoring.* pozostaną również wyłączone. |
Konfiguracja mechanizmu monitorowania wątków (zmienne środowiskowe)
Mechanizm monitorowania wątków również można skonfigurować przez zmienne środowiskowe. Jest to mało przydatne przy normalnej instalacji systemu u klienta. Jest to preferowana opcja skonfigurowania tego mechanizmu, jeśli system uruchamiany jest w Dockerze (np. Azure).
Nazwy parametrów do skonfigurowania (funkcje analogicznie, do parametrów w punkcie Konfiguracja mechanizmu monitorowania wątków (plik db.properties)):
- PWFL_DB_THREADS_MONITORING_ENABLED
- PWFL_DB_THREADS_MONITORING_TASK_ENABLED
- PWFL_DB_THREADS_MONITORING_TASK_DELAY
- PWFL_DB_THREADS_MONITORING_TASK_PERIOD
- PWFL_DB_THREADS_MONITORING_WARNINGS_DANGEROUS_PROCESS_LOCKS
- PWFL_DB_THREADS_MONITORING_WARNINGS_REDUNDANT_SHARK_TRANSACTIONS
- PWFL_DB_THREADS_MONITORING_WARNINGS_REDUNDANT_HIKARI_CONNECTIONS
To, czy użyte zostaną te zmienne środowiskowe, zależy od zdefiniowania wymaganych parametrów z sekcji Konfiguracja bazy danych (zmienne środowiskowe).
| Note |
|---|
Zmienna środowiskowa PWFL_DB_THREADS_MONITORING_ENABLED steruje globalnie całym mechanizmem. Jeżeli jest wyłączona, to pozostałe funkcje o prefixie PWFL_DB_THREADS_MONITORING_* pozostaną również wyłączone. |
Inne zmienne środowiskowe
Oprócz powyższych zmiennych środowiskowych, dostępne są również następujące z nich do użycia wewnętrznego:
- PWFL_SHARK_UNCOMMITED_TX_DEADLOCK_PROTECTION_STARTUP_DEADLINE
- opóźnienie w minutach pierwszego sprawdzenia stanu wtyczki
- PWFL_SHARK_UNCOMMITED_TX_DEADLOCK_PROTECTION_ATTEMPTS
- ilość podejmowanych prób commitowania zawieszonych połączeń sharkowych
- PWFL_SHARK_UNCOMMITED_TX_DEADLOCK_PROTECTION_ATTEMPT_POSTPONE
- opóźnienie w sekundach podjęcia następnej próby commitowania zawieszonych połączeń sharkowych
Lokalizacja danych
Jeśli katalog domowy jest włączony to w ustawionym folderze znajdują się następujące dane dotyczące działania PlusWorkflow:
...
| Opis kroku | Wymagane | Dodatkowe informacje |
|---|---|---|
| Ustaw ścieżkę katalogu w parametrze plusworkflow.home w web.xml (włączenie katalogu domowego) | ||
| Przenieś ustawienia bazy danych z context.xml do pliku <home-dir>/config/db.properties | Usuń konfigurację bazy z pliku context.xml i web.xml (tag 'resource-ref'). | |
| Przenieś ustawienia parametrów z PlusWorkflow.conf, które mają ustawienia różne od domyślnych. Zmień wartości domyślne parametrów w PlusWorkflow w Administracja' -> 'Konfiguracja systemu' -> 'Parametry systemowe' | Usuń konfigurację parametru 'Shark_Conf' z pliku web.xml | |
| Przenieś zawartość dotychczasowego katalogu z wtyczkami do <home-dir>/data/plugins (lub ew. zainstaluj wtyczki od nowa) | ||
| Przenieś zawartość dotychczasowego katalogu z mapami procesów do <home-dir>/XPDL | ||
| Ustaw domyślne logi (zalecane) parametrem log4jConfigLocation w web.xml lub przenieś własne Własne ustawienia logów | Ustaw wartość parametru log4jConfigLocation na 'classpath:Log4j.xml', wtedy domyślne loggery będą zapisywały logi do domyślnej lokalizacji tj. <home-dir>/logs. | |
| Jeśli przeniesiono własne ustawienia logów i została w nich zmieniona lokalizacja powstawania plików z logami, a chcesz kontynuować poprzednie pliki logów to przekopiuj zawartość wcześniejszego katalogu z logami do nowej lokalizacji (ustawionej w <home-dir>/config/Log4j.xml) |
| Info | ||||
|---|---|---|---|---|
| ||||
Jeśli istnieje kod wdrożeniowy w którym znajduje sie odwołanie do systemowego data source np:
należy zastąpić go pobraniem go w ten sposób:
|
