Opcje komend serwera

Komenda server obsługuje uruchamianie, zatrzymywanie, tworzenie, pakowanie i zrzucanie serwera Liberty. W tym temacie opisano wszystkie dostępne opcje i kody wyjścia, których można używać z komendą server i równoważnym wykonywalnym plikiem JAR ws-server.jar.

Składnia

Składnia komendy jest następująca:

server action serverName [options]

Wartość action reprezentuje operację, którą można wykonać na serwerze Liberty. Patrz available administration operations for Liberty from the command prompt.

Uwaga: Jeśli serwer nie jest określony w wierszu komend, działanie jest wykonywane względem domyślnej instancji serwera defaultServer, jeśli istnieje.

Opcje

Dla komendy server dostępne są następujące opcje:
-- archive=path_to_the_target_archive_file

Określa plik docelowy dla operacji package lub dump . Ścieżka ta może być ścieżką względną, która jest względna w stosunku do głównego katalogu instalacyjnego produktu Liberty lub ścieżki bezwzględnej. Domyślnym miejscem docelowym archiwum jest skompresowany plik z nazwą serwera, który jest zapisany w instalacyjnym katalogu głównym. Jeśli wartość zawiera spacje, należy użyć cudzysłowów. Ta opcja może być używana zarówno w przypadku operacji package , jak i dump .

Dla platform rozproszonychDla platform IBM iJeśli określono rozszerzenie .jar dla nazwy pliku archiwum, komenda server tworzy nowy samorozpakowujący się plik archiwum, z którego serwer Liberty może być instalowany za pomocą komendy java . Więcej informacji na ten temat zawiera sekcja Instalowanie serwera Liberty przez wyodrębnienie pliku archiwum Java w dokumentacji produktu. Narzędzie rozszerzeń .jar nie jest dostępne na platformie z/OS® .

--clean
Czyści wszystkie trwałe informacje buforowane, które są powiązane z określoną instancją serwera, która zawiera metadane obiektu tłumaczącego OSGi oraz trwałe dane pakunku OSGi. W przypadku użycia tej opcji serwer będzie zobowiązany do ponownego obliczenia wszystkich buforowanych danych podczas następnego uruchomienia, co może zająć więcej czasu niż restartowanie, które może ponownie wykorzystać buforowane dane.
Uwaga: Ta opcja nie jest konieczna do normalnego działania. Usługa IBM® może zażądać użycia tej opcji podczas udostępniania poprawki tymczasowej lub podejrzenia, że istnieje podejrzenie problemu z danymi buforowanymi. Ta opcja może być również konieczna w przypadku tworzenia rozszerzenia produktu, aktualizując manifesty OSGi lub planując wyczyszczenie trwałych danych pakunku OSGi.
-- include=package_option
Określa pliki, które mają zostać spakowane, gdzie opcja może przyjmować jedną z następujących wartości:
  • all określa, że wszystkie pliki zostaną spakowane w katalogu instalacyjnym serwera Liberty. Jeśli ${WLP_USER_DIR} i ${WLP_OUTPUT_DIR}zdefiniowane w pliku server.env, pliki znajdujące się pod nimi są spakowane. Ta wartość ma zastosowanie tylko do operacji package .
  • Parametr usr określa, że pliki mają zostać spakowane w katalogu ${WLP_USER_DIR} . Ta wartość ma zastosowanie tylko do operacji package .
  • Parametr minify określa, że pakiet ma być przesyłany tylko do tych części środowiska wykonawczego oraz do plików znajdujących się w katalogu ${WLP_USER_DIR} , które są wymagane do uruchomienia serwera, co minimalizuje wielkość powstaanego archiwum. Ta wartość ma zastosowanie tylko do operacji package .
-- include=diagnose_option,diagnose_option,...
Określa typ informacji diagnostycznych, które mają zostać przechwycone. Wartość --include jest listą rozdzielaną przecinkami, która może zawierać dowolną z następujących wartości:
  • Produkt heap jest używany do diagnozowania nadmiernego zużycia pamięci i przecieków pamięci, co powoduje wyświetlenie na żywo obiektów w pamięci i odwołań między nimi. Na maszynach wirtualnych IBM J9 wynikowy plik ma nazwę heapdump.date.time.processID.sequenceNumber.phd. Na maszynach wirtualnych HotSpot wynikowy plik ma nazwę java.date.time.processID.sequenceNumber.hprof. Ta wartość ma zastosowanie zarówno do operacji dump , jak i javadump .
  • Produkt system jest również używany do diagnozowania nadmiernego zużycia pamięci i przecieków pamięci, ale są one również przydatne do wyszukiwania defektów w maszynie wirtualnej. Zrzuty te są obsługiwane tylko na maszynach wirtualnych IBM J9 . Plik wynikowy ma nazwę core.date.time.processID.sequenceNumber.dmp. Ta wartość ma zastosowanie zarówno do operacji dump , jak i javadump .
  • Produkt thread jest używany do diagnozowania zawieszonych wątków, zakleszczeń i czasami może być używany do diagnozowania nadmiernych problemów związanych z procesorem. Zrzuty te są zawsze tworzone za pomocą komendy server javadump . Na maszynach wirtualnych IBM J9 wynikowy plik ma nazwę javacore.date.time.processID.sequenceNumber.txt. W przypadku maszyn wirtualnych HotSpot wynikowy plik ma nazwę javadump.date.time.processID.sequenceNumber.txt. Ta wartość może być również zastosowana do operacji dump .
    Uwaga: Typ zrzutu wątku jest obsługiwany tylko wtedy, gdy serwer jest uruchomiony w pakiecie Java™ SDK. Jeśli serwer jest uruchomiony ze środowiskiem JRE, zgłaszany jest błąd wskazujący, że serwer nie obsługuje typu zrzutu. To ograniczenie dotyczy tylko maszyn wirtualnych HotSpot . Typ zrzutu Java wątku jest obsługiwany przez dowolną maszynę JVM firmy IBM (JRE lub SDK).
-- os=os_value,os_value,...
Określa systemy operacyjne, które mają być obsługiwane przez spakowany serwer. Podaj listę rozdzielaną przecinkami. Wartością domyślną jest any, która wskazuje, że serwer ma być wdrażany do dowolnego systemu operacyjnego obsługiwanego przez źródło.

Aby określić, że system operacyjny nie jest obsługiwany, należy poprzedzić go znakiem minus (-). Listę wartości systemu operacyjnego można znaleźć w serwisie WWW OSGi Alliance pod następującym adresem URL: https://www.osgi.org/developer/specifications/reference/#os.

Ta opcja ma zastosowanie tylko do operacji package i może być używana tylko z opcją --include=minify . Jeśli system operacyjny nie zostanie wykluczony, nie będzie można go później włączyć, jeśli operacja minify zostanie powtórzona w archiwum.

-- target=pausable_component,pausable_component,...
Określa rozdzielaną przecinkami listę konkretnych komponentów, które mogą być wstrzymane. Jeśli zostanie określona opcja docelowa, zostaną wstrzymane lub wznowione tylko te komponenty, które są wymienione na liście. Lista przykładowych wartości docelowych znajduje się w sekcji Wstrzymanie i wznawianie serwera Liberty z poziomu wiersza komend.

Proces serwera

Proces serwera jest tworzony przy użyciu zmiennych środowiskowych, które są określone w pliku server.env . Domyślnie dodawane są następujące opcje maszyny JVM:
  • Opcja -javaagent:wlp/bin/tools/ws-javaagent.jar jest wymagana do śledzenia, monitorowania, przyrostowego publikowania aplikacji i innych możliwości serwera.
  • -Xshareclasses i opcje pokrewne umożliwiają pamięć podręczną współużytkowanych klas na obsługiwanych maszynach wirtualnych IBM J9 . Katalog pamięci podręcznej jest ustawiony na wartość WLP_OUTPUT_DIR/.classCache.
  • Opcja -XX:MaxPermSize powoduje zwiększenie wielkości pamięci trwałej dla maszyn wirtualnych HotSpot przed Java 8. Zmienną środowiskową WLP_SKIP_MAXPERMSIZE można ustawić na wartość true , aby uniknąć tej opcji domyślnej, co pozwala uniknąć ostrzeżeń, takich jak:
    Ostrzeżenie maszyny wirtualnej klienta Java HotSpot(TM): ignorowanie opcji MaxPermSize=256m; zostało usunięte w wersji 8.0 .
  • Opcja -Djava.awt.headless=true pozwala uniknąć wyjątku java.awt.HeadlessException na wszystkich platformach i skupić się na kradzieży problemów w systemie Mac OS X.

Można użyć pliku jvm.options , aby nadpisać te domyślne opcje maszyny JVM lub dodać więcej opcji maszyny JVM. Więcej informacji na temat plików server.env i jvm.options zawiera sekcja Dostosowywanie środowiska Liberty.

Dla platform UNIXDla platform IBM iDomyślnie komenda server ustawia wartość umask, aby odmówić wszystkich uprawnień użytkownikom programu Other przed uruchomieniem działania komendy. Zmienną środowiskową WLP_SKIP_UMASK można ustawić na wartość true w pliku server.env , aby zapobiec modyfikowaniu komendy umask przez komendę serwera. Jeśli zmienna środowiskowa WLP_SKIP_UMASK zostanie ustawiona, serwer użyje wartości umask z bazowego procesu operacji. W systemie z/OSwłaściwość WLP_SKIP_UMASK można określić w jeden z następujących sposobów:
  • Użyj pliku server.env .
  • Alternatywnie, jeśli serwer zostanie uruchomiony z procedurą z/OS , można określić właściwość z pozycją STDENDV DD .

Bieżący katalog roboczy procesu serwera jest ustawiany na katalog wyjściowy serwera.

Dla platform UNIXDla platform IBM iThe server command creates a process ID (PID) file when you start the server and deletes the PID file when you stop the server. Domyślnie plik PID jest ustawiony na wartość WLP_OUTPUT_DIR/.pid/serverName.pid. Ścieżkę bezwzględną pliku PID można zmienić, ustawiając zmienną środowiskową PID_FILE lub pełną ścieżkę do katalogu PID można zmienić, ustawiając zmienną środowiskową PID_DIR .

Standardowe wyjście i błąd z procesu serwera są wyprowadzane na konsolę pierwszoplanową, gdy używane są działania run i debug , a następnie przekierowane do pliku WLP_OUTPUT_DIR/serverName/logs/console.log domyślnie podczas korzystania z działania start . Nazwę dziennika można zmienić, ustawiając zmienną środowiskową LOG_FILE , a katalog dzienników można zmienić, ustawiając zmienną środowiskową LOG_DIR . Więcej informacji na temat konfigurowania rejestrowania zawiera sekcja Rejestrowanie i śledzenie.

Działanie stop zapobiega wprowadzaniu nowych żądań aplikacji do serwera, co pozwala na zakończenie istniejących żądań. Po tym czasie pozostałe komponenty serwera są zatrzymane, a proces serwera kończy działanie. Żądania aplikacji, które nie są zakończone w dozwolonym czasie, kończą się niepowodzeniem, ale ich dokładne zachowanie zależy od ich działania w momencie zatrzymania komponentów serwera.

Kody wyjścia

Dla komendy server i równoważnego wykonywalnego pliku JAR ws-server.jardostępne są następujące kody wyjścia:
0
OK. Wartość 0 oznacza pomyślne zakończenie żądanej operacji. W przypadku statusu serwera wartość 0 wskazuje, że serwer jest uruchomiony.
1
W przypadku statusu serwera wartość 1 wskazuje, że serwer nie jest uruchomiony. W przypadku innych operacji wskazuje on wywołanie nadmiarowej operacji. Na przykład uruchomienie uruchomionego serwera lub zatrzymanie zatrzymanego serwera. Ten kod może również zostać zwrócony przez maszynę JVM, jeśli używane są niepoprawne opcje języka Java.
2
Serwer nie istnieje.
3
Na działającym serwerze wywołano nieobsługiwane działanie. Na przykład serwer jest uruchomiony po wywołaniu działania pakietu.
4
Na zatrzymanej serwerze wywołano nieobsługiwane działanie. Na przykład serwer nie jest uruchomiony, gdy wywołano działanie zrzutu.
5
Nieznany status serwera. Na przykład brak katalogu workarea lub praca API Attach nie powiodła się.
>=20
Kody powrotu większe niż lub równe 20 wskazują, że wystąpił błąd podczas wykonywania żądania. Komunikaty są drukowane i przechwytywane w plikach dziennika. Więcej informacji o błędzie można znaleźć w plikach dziennika.

Użycie

W poniższych przykładach przedstawiono poprawną składnię:

server run
server start myserver --clean
server package myserver --archive="archivefile.zip" --include=all
server dump myserver --archive="c:\mybackup\myserver.zip" --include=thread
server javadump myserver
server javadump myserver --include=thread,system