Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Inhalt

...

maxLevel

...

2

Definition


Zweck des Wartungsmodus ist es, das System in einen Zustand zu versetzen, in dem keine störenden Transaktionen von Benutzern oder der Jobsteuerung durchgeführt werden können, welche z.B. den Nuclet-Import / -Export negativ beeinflussen könnten.

Der Wartungsmodus kann über den Nuclos-Client oder alternativ über die REST-Schnittstelle aktiviert / deaktiviert werden.

Sobald das System in den Wartungsmodus versetzt wird, werden alle Benutzer, außer dem Super-User der den Wartungsmodus startet, gezwungen sich auszuloggen. Außerdem wird die Jobsteuerung pausiert. Es ist des Weiteren nicht möglich Dateiimporte auszuführen.

Während der Wartungsmodus aktiv ist kann sich nur der eine Super-User anmelden, der den Wartungsmodus gestartet hat.

Nach Beenden des Wartungsmodus wird die Jobsteuerung fortgesetzt, Dateiimporte sind wieder möglich und Benutzer können sich wieder anmelden.

Verwendung des Wartungsmodus über den Nuclos Web Client

Der Wartungsmodus kann durch Auswahl der Wartungsmodus-Arbeitsumgebung von einem Super-User gestartet werden.

Image Removed

Bis alle User außer dem Initiator des Wartungsmodus ausgeloggt sind und keine Jobs mehr laufen wird folgende Maske angezeigt:

Image Removed

Solange der Wartungsmodus aktiv ist, ist nur diese eingeschränkte Arbeitsumgebung zugänglich.

Image Removed

Durch Auswahl einer anderen Arbeitsumgebung wird der Wartungsmodus wieder beendet.

Image Removed

Image Added

Zum aktivieren des Wartungsmodus auf den Button "Wartungsmodus aktivieren" auswählen.

Image Added





Verwendung des Wartungsmodus über die REST-Schnittstelle

Die meisten Schnittstellenaufrufe können nur von einem Super-User durchgeführt werden, weshalb zuvor ein Login mit einem Super-User Account durchgeführt werden muss.

In den folgenden Schnittstellenaufrufen wird beispielhaft das Shell-Kommando curl verwendet.

Login

Codeblock
languagetext
sessionId=`curl http://localhost:8080/nuclos-war/rest/login -X POST -H "Content-Type: application/json" -d '{"username":"nuclos", "password":"", "locale":"en-EN"}'`
 
# Nuclos 4.3 - 4.5:
sessionId=`curl http://localhost:8080/nuclos-war/rest -X POST -H "Accept:application/json" -H "Content-Type: application/json" -d '{"username":"nuclos", "password":""}' | awk -v FS="\"" '{ print $4  }'`
# Für alle folgenden Aufrufe muss die "sessionId" als Request-Parameter übergeben werden.
 
# ab Nuclos 4.6:
curl --cookie-jar cookies.txt http://localhost:8080/nuclos-war/rest -X POST -H "Content-Type: application/json" -d '{"username":"'nuclos'", "password":"''"}';
# Anstatt des "sessionId"-Request-Parameters wird das JSESSIONID Cookie über den Cookiestore verwendet.




Logout

Codeblock
languagetext
curl http://localhost:8080/nuclos-war/rest/logout?sessionid=$sessionId
 
# Nuclos 4.3 - 4.5:
curl http://localhost:8080/nuclos-war/rest?sessionId=$sessionid -X DELETE
 
# ab Nuclos 4.6:
curl --cookie-jar cookies.txt http://localhost:8080/nuclos-war/rest -X DELETE

Wartungsmodus initiieren

Codeblock
languagetext
# bis 4.28
curl --cookie cookies.txt http://localhost:8080/nuclos-war/rest/maintenance/start


# ab 4.29
curl --cookie cookies.txt -X PUT "http://localhost:2019/nuclos-war/rest/maintenance/mode" -d on
curl --cookie cookies.txt -X PUT "http://localhost:2019/nuclos-war/rest/maintenance/mode?force=true" -d on # es wird nicht darauf gewartet, bis alle Clients abgemeldet sind

Wartungsmodus beenden

Codeblock
languagetext
# bis 4.28
curl --cookie cookies.txt http://localhost:8080/nuclos-war/rest/maintenance/end

# ab 4.29
curl  --cookie cookies.txt -X PUT "http://localhost:2019/nuclos-war/rest/maintenance/mode" -d off

Status abfragen

Codeblock
languagetext
curl --cookie cookies.txt http://localhost:8080/nuclos-war/rest/maintenance/mode

Mögliche Rückgabewerte sind:

offDer Wartungsmodus ist nicht aktiv.

initialized

Der Wartungsmodus wird gerade startet.
onDer Wartungsmodus ist aktiv.

Nuclet-Export

Der Local Identifier des Nuclets ist Teil der URL.

Codeblock
languagetext
 curl --cookie -X POST http://localhost:8080/nuclos-war/rest/maintenance/nucletexport/PE4A > ~/temp/nucletexport.nuclet

Nuclet-Import

Codeblock
languagetext
 curl --cookie -F "file=@~/temp/nucletimport.nuclet" "http://localhost:8080/nuclos-war/rest/maintenance/nucletimport"