Wprowadzenie
Grupa docelowa
- Programiści aplikacji
- Administratorzy systemu
- Konsultanci techniczni
Wymagania wstępne
Poprawnie wykonana instalacja, bez błędów.
Skrypty
Poniżej wymienione są podstawowe skrypty wykorzystywane do uruchamiania systemu na różnych systemach operacyjnych. Dla wszystkich istotnych możliwości konfiguracyjnych, takich jak na przykład rozszerzenie ścieżki klas lub zmiana domyślnych parametrów JVM, przewidziane są odpowiednie parametry lub zmienne środowiskowe. Umożliwiają one dostosowanie konfiguracji bez konieczności ręcznej modyfikacji skryptów.
Windows
W katalogu /bin/win2000 znajdują się skrypty, które mogą być uruchamiane w systemach operacyjnych Windows z poziomu tollshell (cmd.exe) i które umożliwiają uruchomienie serwera aplikacji systemu ERP (SAS).
| Skrypt | Wyjaśnienie |
| env.bat | Ustawianie wymaganych zmiennych środowiskowych (ścieżka, ścieżka klas). |
| semiramis.bat | Uruchamianie serwera aplikacyjnego systemu ERP dla pracy centralnego serwera. |
| tool.bat | Uruchomienie serwera aplikacyjnego systemu ERP bez wbudowanego serwera WWW. |
| svm.bat | Uruchamianie serwera aplikacyjnego systemu ERP do testów lokalnych. |
Skrypty tool.bat oraz svm.bat zawierają jedynie wywołanie skryptu semiramis.bat z predefiniowanymi parametrami.
- tool.bat odpowiada wywołaniu semiramis.bat –norestartjvm
- svm.bat odpowiada wywołaniu semiramis.bat –tool –norestartjvm
Strona kodowa
Podczas korzystania z tych skryptów w systemie Windows najpierw ustalana jest aktualna strona kodowa interpretera poleceń, a następnie jest ona przekazywana jako parametr do serwera aplikacji systemu ERP. Serwer ten wykorzystuje stronę kodową zarówno do wyświetlania komunikatów w konsoli, jak i do zapisu w pliku dziennika. Ponieważ w komunikatach używane są znaki Unicode, może się zdarzyć, że nie wszystkie znaki zostaną poprawnie wyświetlone w konsoli lub w pliku dziennika. Dotyczy to w zależności od wersji systemu operacyjnego i języka systemu między innymi znaków diakrytycznych oraz cudzysłowów. Problem ten można skorygować poprzez ustawienie odpowiedniej strony kodowej przed wywołaniem skryptów.
GRAFTABL 1252
semiramis.bat LOCALHOST
Linux, Unix i OS/400
W katalogu /bin/unix znajdują się skrypty, które mogą być uruchamiane w systemach Linux, Unix oraz i5/OS z poziomu tollshell zgodnej z sh i które umożliwiają uruchomienie serwera aplikacyjnego systemu ERP (SAS).
| Skrypt | Wyjaśnienie |
| env.sh | Ustawianie wymaganych zmiennych środowiskowych (ścieżka, ścieżka klas). |
| semiramis.sh | Uruchamianie SAS do pracy centralnego serwera. |
Katalogi
Każdy serwer aplikacji systemu ERP wymaga własnego katalogu roboczego, do tego celu przewidziany jest katalog o nazwie serwera aplikacyjnego w katalogu semiramis/servers. W podkatalogu serwera aplikacji standardowo tworzony jest również katalog „log”, w którym zapisywane są pliki dziennika. Dzięki temu pliki dziennika wszystkich serwerów aplikacyjnych są dostępne centralnie, bez konieczności konfigurowania parametru -logFile dla każdego serwera aplikacji.
Aby możliwe było tworzenie tych katalogów oraz zawartych w nich podkatalogów i plików, każdy serwer aplikacyjny systemu ERP musi posiadać odpowiednie uprawnienia do katalogu semiramis/servers. W katalogu semiramis/servers serwer komunikatów lub serwery aplikacyjne wykonujące procesy instalacyjne tworzą plik stanu o nazwie <Nazwa systemu>.state. Obecność tego pliku lub jego zawartość sterują tym, czy oraz które serwery aplikacyjne mogą zostać uruchomione. Pozwala to na przykład osiągnąć sytuację, w której po uruchomieniu serwera komunikatów pozostałe serwery aplikacyjne pozostają zatrzymane do momentu, aż serwer komunikatów będzie gotowy.
semiramis/
servers/
CIS410PAOR.state
LOCALHOST/
log/
CIS420PAOR.LOCALHOST.log
Zmienne środowiskowe
Następujące zmienne środowiskowe umożliwiają na wszystkich platformach uzyskanie dodatkowych informacji lub wykonanie dodatkowych akcji podczas inicjalizacji, uruchamiania, ponownego uruchamiania oraz zatrzymywania systemu. Muszą one zostać ustawione przed wywołaniem skryptu. Wymienione są zmienne środowiskowe wraz z przykładowymi wartościami.
| Zmienne środowiskowe | Wyjaśnienie |
| SEMIRAMIS_START | Podczas wykonywania env.bat (odpowiednio env.sh) zawartość tej zmiennej środowiskowej jest automatycznie wykonywana na końcu inicjalizacji w tej samej instancji shell. Funkcja ta jest bardzo przydatna do bezpośredniego uruchamiania SAS za pomocą skrótu. Dla tej zmiennej środowiskowej nie jest zdefiniowana wartość domyślna. Przykład SET SEMIRAMIS_START = “semiramis.bat LOCALHOST” |
| SEMIRAMIS_JVM_PARAMETERS | Jeżeli dla tej zmiennej środowiskowej zdefiniowana jest wartość, zostanie ona użyta zamiast wartości domyślnej opisanej w rozdziale Parametry JVM. |
| SEMIRAMIS_VERBOSE |
Ustawienie tej zmiennej środowiskowej na dowolną niepustą wartość powoduje szczegółowe wyświetlanie kroków inicjalizacji. Jest to pomocne przy weryfikacji ustawień ścieżek oraz ścieżki klas.
|
| SEMIRAMIS_CLASSPATH | Zawartość tej zmiennej środowiskowej jest podczas inicjalizacji przez env.bat (odpowiednio env.sh) automatycznie dołączana na końcu ścieżki klas. Umożliwia to dołączanie dodatkowych bibliotek i klas bez modyfikowania skryptów. Biblioteki te nie mogą i nie powinny zastępować klas dostarczonych w standardowej ścieżce klas. Dla tej zmiennej środowiskowej nie jest zdefiniowana wartość domyślna. |
| SEMIRAMIS_RESTART_NOTIFICATION |
Te zmienne środowiskowe umożliwiają wykonywanie własnych skryptów w momencie zakończenia działania SAS. W zdefiniowanej wartości mogą zostać użyte następujące symbole zastępcze:
|
| SEMIRAMIS_STOP_NOTIFICATION | |
| SEMIRAMIS_EXCEPTION_NOTIFICATION | |
| SEMIRAMIS_REMOTE_DEBUGGING |
Ustawienie tej zmiennej środowiskowej umożliwia aktywację zdalnego debugowania JVM podczas uruchamiania, bez konieczności zmiany parametrów JVM serwera aplikacyjnego systemu ERP w konfiguracji systemowej. SET SEMIRAMIS_REMOTE_DEBUGGING=true SET SEMIRAMIS_REMOTE_DEBUGGING=7000 |
| SEMIRAMIS_REMOTE_JCONSOLE |
Ustawienie tej zmiennej środowiskowej umożliwia zdalne monitorowanie serwera aplikacyjnego za pomocą aplikacji Jconsole, na przykład zużycia pamięci lub wartości wskaźników. SET SEMIRAMIS_REMOTE_JCONSOLE=true SET SEMIRAMIS_REMOTE_JCONSOLE=6000 |
Parametry JVM
System definiuje dla każdego SAS, w zależności od systemu operacyjnego, wartości domyślne dla maszyny wirtualnej Java (JVM). W aplikacji Panel System dla każdego SAS mogą zostać określone parametry odbiegające od tych wartości domyślnych.
Standardowe parametry wykorzystywane w skryptach są przeznaczone do uruchamiania lokalnych serwerów SAS na komputerach deweloperskich oraz do pracy mniejszych systemów demonstracyjnych. W przypadku serwerów aplikacyjnych, którym dostępna jest większa ilość pamięci operacyjnej, parametry „-Xms”, „-Xmx” oraz ewentualnie także „-XX:MaxPermSize” powinny zostać ustawione na odpowiednio wyższe wartości. Zazwyczaj powinno to być realizowane poprzez dostosowanie wartości w aplikacji Panel System. W wyjątkowych przypadkach, na przykład przy użyciu określonych profilerów lub gdy ponowne uruchomienie w celu aktywacji wartości z konfiguracji systemowej trwałoby bardzo długo, celowe może być nadpisanie parametrów domyślnych poprzez ustawienie zmiennej środowiskowej SEMIRAMIS_JVM_PARAMETERS. Wartości ustawione w ten sposób obowiązują wtedy, gdy w aplikacji Panel System dla serwera aplikacji nie zdefiniowano parametrów JVM lub gdy serwer aplikacyjny został uruchomiony z parametrem „-noRestartJVM”.
Podczas uruchamiania SAS za pomocą skryptu semiramis.bat lub semiramis.sh wartości przekazane w wierszu poleceń są porównywane z wartościami zapisanymi w konfiguracji systemowej. Jeżeli wartości te różnią się, maszyna wirtualna Java zostaje zakończona i automatycznie uruchomiona ponownie z parametrami pochodzącymi z konfiguracji systemowej.
Parametry domyślne, które system wykorzystuje do uruchamiania maszyny wirtualnej Java, są zapisywane w pliku dziennika serwera aplikacyjnego podczas jego startu.
Wartości te są dostosowane do serwera aplikacji, któremu dostępne jest co najmniej 256 MB pamięci operacyjnej i który jest wykorzystywany do celów deweloperskich. Dodatkowe informacje dotyczące konfiguracji parametrów JVM znajdują się w artykule Ustawienia JVM.
Polecenie
Poniżej przedstawiono polecenie wraz ze wszystkimi możliwymi parametrami.
| semiramis | [-logfile:<str>] [-monitoring:<str>] [-noCheckDatabaseInformation] [-noCheckDatabaseConnections] [-noCheckJvmVersion] [-printJvmVersion] [-noCheckMemory] [-noClassloader] [-noConsole] [-consoleCodePage:<str>] [-noRestartJvm] [-noApplicationCode] [-noKnowledgeStore] [-noSupportRequestService] [-noBatchService] [-noOutputService] [-tool] [-toolDatabase:<str>] [-toolUser:<str>] [-autoUpgrade] [-upgradeMode] [-useDeletedObjects] [-verbose] [-noWorkflowEngine] [-workflowEngine Master] [-writeConvertedTables] [-jdbcLog:<str>] [-copyLibs:<str>] [-noCheckPatchDirectory] SERVER |
Parametry serwera
Parametry serwera określone w aplikacji Panel system są obecnie ignorowane.
Parametry
Parametry polecenia zostały wyjaśnione w poniższej tabeli. Parametry w nawiasach kwadratowych są opcjonalne, podczas gdy pozostałe są obowiązkowe. Gwiazdka (*) może być określona jako symbol zastępczy dla niektórych parametrów, aby móc wyświetlić wszystkie możliwe wartości. Nie wszystkie parametry mogą być określone więcej niż jeden raz; tylko te z następującym dodatkiem do zmiennych parametrów są dozwolone do wielokrotnego określenia: <str-1> … <str-n>.
| Parametr | Opis |
| [-logfile:<str>] | Nazwa pliku dziennika, do którego zapisywane są wszystkie wyjścia konsoli. Domyślnie jest to plik o nazwie servers/<SAS>/log/<System>.<SAS>.log, zapisywany w katalogu semiramis. Jeżeli użycie tego katalogu nie jest możliwe z powodu błędów, plik dziennika tworzony jest w katalogu tymczasowym bieżącego użytkownika systemu operacyjnego. Rozmiar pliku dziennika jest ograniczony do 1 MB. Po osiągnięciu maksymalnego rozmiaru plik jest automatycznie zmieniany na <NazwaPliku>_1.log. Łącznie w ten sposób przechowywanych jest sześć ostatnich plików dziennika. |
| [-monitoring:<str>] | Za pomocą tego parametru określana jest nazwa pliku, do którego zapisywane są informacje monitorujące. |
| [-noCheckDatabaseInformation] | Dezaktywuje sprawdzanie informacji o bazie danych. Bez tej kontroli bazy danych systemu nie mogą być używane lub mogą być używane jedynie w ograniczonym zakresie. Parametr ten może być stosowany wyłącznie w celu umożliwienia uruchomienia serwera aplikacji mimo błędów konfiguracyjnych oraz usunięcia ich przyczyny. |
| [-noCheckDatabaseConnections] | Dezaktywuje sprawdzanie połączeń z bazami danych. Przy użyciu tego parametru serwer aplikacji uruchamia się nawet wtedy, gdy nie może nawiązać połączenia ze wszystkimi przypisanymi do niego bazami danych OLTP i OLAP. Po uruchomieniu z tym parametrem połączenia te mogą zostać na przykład usunięte. |
| [-noCheckJvmVersion] | Dezaktywuje sprawdzanie wersji maszyny wirtualnej Java (JVM). Eksploatacja systemu jest dozwolona wyłącznie z zatwierdzonymi wersjami JVM lub JDK. Użycie innych wersji może prowadzić do awarii serwera aplikacji oraz do niespójnych danych i klas. Stosowanie tego parametru jest dozwolone wyłącznie po konsultacji z Asystą Techniczną. |
| [-printJvmVersion] | Parametr umożliwia wyświetlenie aktualnych informacji o systemie operacyjnym oraz maszynie wirtualnej Java. Następnie wyświetlane są wszystkie konfiguracje dopuszczone do pracy produkcyjnej. |
| [-noCheckMemory] |
Dezaktywuje automatyczne sprawdzanie dostępnej pamięci operacyjnej. Mogą wystąpić sytuacje, w których takie działanie znacząco obniża wydajność. W takich przypadkach automatyczna ochrona może zostać wyłączona.
|
| [-noClassloader] | Dezaktywuje użycie mechanizmu Classloader. Parametr ten nie ma obecnie bezpośredniego wpływu na działanie systemu. |
| [-noConsole] | Parametr dezaktywuje bezpośrednie wyjścia na konsolę. Wszystkie komunikaty są zapisywane wyłącznie do pliku dziennika, co może pozytywnie wpłynąć na wydajność. |
| [-consoleCodePage:<str>] | Parametr określa stronę kodową używaną do wyświetlania danych w konsoli. Jest on wymagany w celu poprawnego wyświetlania znaków diakrytycznych. Skrypt semiramis.bat wykonuje to automatycznie przy użyciu programu GetCodePage.exe. Alternatywnie wartość może zostać ustawiona w właściwościach ERP. |
| [-noRestartJvm] | Parametr dezaktywuje sprawdzanie parametrów JVM. Standardowo podczas uruchamiania SAS parametry JVM są weryfikowane. Jeżeli nie są one zgodne z ustawieniami w Panel System, SAS jest uruchamiany ponownie z parametrami z aplikacji Panel System. |
| [-noApplicationCode] | Parametr dezaktywuje inicjalizację części programu odpowiedzialnej za logikę biznesową. |
| [-noKnowledgeStore] | Parametr uniemożliwia inicjalizację Knowledge Store. |
| [-noSupportRequestService] | Parametr uniemożliwia inicjalizację usługi obsługi zleceń deweloperskich. |
| [-noBatchService] | Parametr uniemożliwia inicjalizację usługi przetwarzania w tle. Może to być konieczne, gdy na serwerze aplikacyjnym działa kolejka przetwarzania zawierająca błędne zlecenia przetwarzania. |
| [-noOutputService] | Parametr uniemożliwia inicjalizację usługi wydań za pośrednictwem menedżera wydruku systemu ERP (SOM). |
| [-tool] | Parametr zapobiega automatycznej inicjalizacji serwera WWW dla danego serwera aplikacyjnego. Wszystkie pozostałe funkcje, takie jak na przykład Toolshell, pozostają dostępne. Serwer WWW może zostać uruchomiony później za pomocą poleceń strsws lub wrksws. |
| [-toolDatabase:<str>] | Parametr umożliwia przypisanie bazy danych OLTP do Toolshell. Jeżeli narzędzie wymaga do działania bazy danych OLTP w środowisku, może ona zostać wskazana za pomocą tego parametru. Narzędzia zdefiniowane systemowo nie wymagają tego parametru. |
| [-toolUser:<str>] | Parametr umożliwia jawne określenie użytkownika, który ma zostać zalogowany do Toolshell. Jeżeli parametr nie zostanie podany, używany jest użytkownik, którego nazwa została wpisana w Panel System jako nazwa użytkownika systemu Windows. |
| [-autoUpgrade] | Uruchamia SAS w specjalnym trybie automatycznej aktualizacji. |
| [-upgradeMode] | Uruchamia SAS w trybie aktualizacji w celu instalacji aktualizacji oprogramowania. |
| [-useDeletedObjects] | Parametr umożliwia dostęp do danych obiektów biznesowych oznaczonych jako usunięte. Może to być wymagane podczas zmiany wersji systemu. |
| [-verbose] | Parametr aktywuje rozszerzone logowanie procesu uruchamiania SAS. Ułatwia to analizę błędów pojawiających się podczas startu serwera aplikacji |
| [-noWorkflowEngine] | Parametr dezaktywuje inicjalizację silnika workflow. Szczegółowe informacje znajdują się w artykule Silnik workflow. |
| [-workflowEngineMaster] | Uruchamia główną usługę workflow. Szczegółowe informacje znajdują się w artykule Silnik workflow. |
| [-writeConvertedTables] | Parametr umożliwia dostęp do przekonwertowanych tabel. |
| [-jdbcLog:<str>] | Parametr umożliwia rejestrowanie wszystkich operacji odczytu wykonywanych przez sterownik JDBC do wskazanego pliku: com.cisag.sys.kernel.tools.database.DatabaseSimulator. |
| [-copyLibs:<str>] |
Parametr aktywuje kopiowanie bibliotek oraz ich użycie z katalogu znajdującego się poniżej wskazanego katalogu bazowego. Kopiowane są biblioteki z katalogów semiramis/lib oraz semiramis/lib/ext, jeżeli data lub rozmiar różnią się od bibliotek znajdujących się w katalogu bazowym. Biblioteki w katalogu bazowym nie mogą być zabezpieczone przed zapisem. Struktura katalogów wygląda następująco:
|
| [-noCheckPatchDirectory] | Parametr dezaktywuje sprawdzanie poprawek, szczegóły w rozdziale Sprawdzanie poprawek (patch). |
Pomoc
Podając parametr -help lub -? po wywołanym skrypcie, można uzyskać listę dostępnych opcji wraz z ich wartościami domyślnymi.
Właściwości ERP
Podczas uruchamiania serwer aplikacyjny systemu ERP wymaga dodatkowych ustawień. Większość z tych ustawień obowiązuje dla całego systemu ERP, natomiast pozostałe dotyczą wyłącznie danego serwera aplikacyjnego systemu ERP. Dodatkowe informacje na temat tych ustawień znajdują się w artykule Właściwości ERP.
Sprawdzanie poprawek (Patch)
Klasy poprawek mogą być sprawdzane automatycznie po uruchomieniu serwera aplikacji.
Jeżeli sprawdzanie ma zostać całkowicie wyłączone, serwer aplikacyjny należy uruchomić z parametrem -noCheckPatchDirectory.
System porównuje, czy wersje klas poniżej katalogu semiramis/patch/classes są nowsze lub równe wersjom klas przechowywanym w zwykłym katalogu semiramis/classes. Komunikaty wskazują wersje klas, które nie są zgodne. Jeśli dotyczy to klasy z kodu systemu, serwer aplikacji jest zamykany.
Dodatkowo przestarzałe wersje poprawek mogą być usuwane automatycznie. Pliki klas poniżej podkatalogu patch/classes są porównywane ze zwykłymi plikami.
Cechy porównania to zawartość odpowiedniej statycznej zmiennej klasy SEMIRAMIS_CLASS_VERSION. Zapewnia to wersję aktywną i wersję poprawki. Jeśli zmienna nie jest obecna, wersja nie jest ustawiana.
| Wersja aktywna | Wersja poprawek (patch) | Wynik |
| Nieustawiona | Nieustawiona | Patch zostaje zachowany. |
| Ustawiona | Nieustawiona | Patch jest przestarzały. |
| Nieustawiona | Ustawiona | Patch zostaje zachowany. |
| Ustawiona | Ustawiona | Patch zostaje zachowany tylko wtedy, gdy wersja patcha jest wyższa niż wersja aktywna. |
Nieaktualne pliki poprawek są przenoszone do podkatalogu patch/classes_removed, a następnie serwer aplikacji jest ponownie uruchamiany. Plik dziennika zawiera listę wprowadzonych zmian.
Sprawdzanie może być włączane lub wyłączane na poziomie pakietów i obowiązuje wówczas automatycznie również dla wszystkich zawartych w nich podpakietów, o ile sprawdzanie nie zostanie jawnie włączone lub wyłączone oddzielnie dla danego podpakietu.
Szczegółowe informacje na ten temat znajdują się w artykule ERP-Properties.
Domyślnie sprawdzanie jest włączone dla następujących pakietów:
- com.cisag.pgm
- com.cisag.sys
- com.sem.ext.app.fin
- com.sem.ext.app.fin4ch / fin4it / fin4pl / fin4us
- com.sem.ext.app.prepctrl
Pliki dziennika
Aktualny plik dziennika serwera aplikacyjnego nosi nazwę <System>.<SAS>.log. Domyślny maksymalny rozmiar pliku dziennika wynosi 5 MB. Wartość ta może zostać zmieniona za pomocą parametru systemowego LogFileSize, szczegóły w artykule ERP-Properties. Po przekroczeniu tej wielkości plik jest dzielony na dwa pliki. Podzielone pliki otrzymują nazwy <System>.<SAS>_<Numer>.log, przy czym najwyższy numer oznacza najstarszy plik dziennika. Nowo utworzony plik zawsze otrzymuje numer 1, a dotychczasowe podzielone pliki są odpowiednio ponownie numerowane.
Od dnia poprzedniego do 7 dni wstecz pliki dziennika są nazywane dziennie, analogicznie również w przypadku więcej niż jednego pliku na dzień. Tylko pliki bieżącego dnia nie zawierają daty w nazwie.
Nazwa:<System>.<SAS>_<YYYYMMDD>.log
lub<System>.<SAS>_<YYYYMMDD>_<Numer>.log
Pliki dziennika starsze niż 7 dni są grupowane dziennie w pliku ZIP.
Nazwa:<System>.<SAS>_<YYYYMMDD>.log.zip
Pliki ZIP są przechowywane przez okres do 35 dni (5 tygodni). Maksymalny okres przechowywania można ustawić za pomocą właściwości LogFileMaxDays.
Maksymalny całkowity rozmiar
Maksymalny łączny rozmiar plików dziennika jednego serwera aplikacyjnego wynosi 50 MB. Wartość ta może zostać skonfigurowana za pomocą właściwości systemowej ERP LogFileMaxSumSize. Jeżeli łączny rozmiar plików dziennika, łącznie z plikami ZIP, zostanie przekroczony, usuwane są najstarsze pliki.
Sprawdzanie to jest wykonywane przy każdej zmianie pliku dziennika, dzięki czemu zajęta przestrzeń nie przekracza sumy maksymalnego rozmiaru całkowitego oraz maksymalnego rozmiaru pojedynczego pliku. Kompresowanie plików dziennika do archiwum powoduje również tymczasowe wykorzystanie dodatkowej przestrzeni dyskowej.



