terrestris GmbH & Co. KG

GeoServer in action

Vorheriges Thema

4. Tipps, Tricks & Troubleshooting

Nächstes Thema

4.2. Layer cachen mit GWC

4.1. Protokollierung

Bei jeglichen Fehlern, die sich auf den GeoServer zurückführen lassen (wie z.B. keine oder falsche Antwort eines Kartendienstes) ist das Protokoll die erste Anlaufstelle. Das GeoServer Protokoll lässt sich dabei entweder direkt über die GUI oder aus dem Dateisystem (/usr/local/lib/geoserver-2.6.1/data_dir/logs) aufrufen. Rein informativen Protokollmeldungen steht dabei das Kürzel INFO vor. Bei schwerwiegenden Fehlern findet sich dort jedoch das Kürzel ERROR.

Für die Protokollierung des GeoServers lassen sich verschiedene Profile einstellen. Diese unterscheiden sich in der Sensitivität, in der die Prozesse des GeoServers protokolliert werden. Das zu verwendende Protokoll kann über die GeoServer-Weboberfläche im Bereich Einstellungen -> Global konfiguriert werden. Der Wechsel eines Profils wirkt sich sofort aus, d.h. der GeoServer muss nicht neu gestartet werden!

../_images/geoserver_logging.png

Protokollierung in der GeoServer-Weboberfläche

Ist die Checkbox bei Ausführliche Fehlerausgaben gesetzt, wird der volle Java-Stacktrace in die Log-Datei geschrieben. Da hierdurch größere Log-Dateien verursacht werden, ist diese Einstellung nur für das Debuggen zu empfehlen.

Hier eine kurze Erläuterung einiger Protokoll-Profile:

  • DEFAULT_LOGGING: Mittleres Protokolllevel auf fast allen Modulebenen des GeoServers.
  • GEOSERVER_DEVELOPER_LOGGING: Ausführliche Protokollierung auf Ebene des Moduls GeoServer. Nur sinnvoll, wenn der GeoServer debuggt wird.
  • GEOTOOLS_DEVELOPER_LOGGING: Ausführliche Protokollierung auf Ebene des Moduls Geo-Tools. Diese Auswahl kann nützlich sein, wenn überprüft werden soll, welche SQL Statements (z.B. bei einer GetFeature Abfrage) an die Datenbank gesendet werden.
  • PRODUCTION_LOGGING: Minimale Protokollierung, nur Fehler werden ausgegeben. Diese Einstellung ist für den Produktiveinsatz zu wählen.
  • VERBOSE_LOGGING: Ausführliche Protokollierung auf allen Ebenen des GeoServes. Nur sinnvoll, wenn der GeoServer debuggt wird.

Wir wollen das Protokoll des GeoServers nun live über das Dateisystem beobachten. Dazu führen müssen die folgenden Schritte ausgeführt werden.

  1. Stellen Sie das VERBOSE_LOGGING-Profil ein.
  2. Der GeoServer auf der OSGeoLive ist so konfiguriert, dass nicht automatisch in die Protokolldatei, sondern in die Standardausgabe des Java-Prozesses geschrieben wird. Wir müssen also den Haken bei in die Standardausgabe schreiben entfernen, sodass das Protokoll in die Datei /usr/local/lib/geoserver-2.6.1/data_dir/logs/geoserver.log geschrieben wird.
  3. Speichern Sie die Einstellungen (unten).
  4. Öffnen Sie die Konsole und führen Sie den folgenden Befehl aus:
less +F /usr/local/lib/geoserver-2.6.1/data_dir/logs/geoserver.log

Bemerkung

Normalerweise würde man statt less +F den Befehl tail -f verwenden. Dies funktioniert auf der OSGeoLive aber aus unbekannten Gründen nicht. Die Live-Beobachtung der Datei kann durch das Drücken der Tastenkombination STRG + C beendet werden.

  1. Öffnen Sie eine Layer-Vorschau und beobachten Sie wie sich das Protokoll verändert.

Die folgende Abbildung stellt diese Schritte dar:

../_images/log_settings_and_preview.png

Protokolleinstellungen und Layer-Vorschau

Sie können nun live beobachten wie sich der Inhalt der Logdatei verändert. Dabei sehen Sie immer das Ende der Protokolldatei. Jede Interaktion in der Vorschau des Layers (z.B. Zoomen oder Klicken) kann nun im Protokoll nachvollzogen werden. Sie können das Protokollprofil auch ändern, um zu beobachten wie sich die Sensitivität der Ausgabe verändert.

../_images/live_logging.png

Live-Beobachtung der Protokollierung

Im folgenden Abschnitt geht es mit dem Thema GeoWebCache (GWC) weiter.