Wie kann man einen Java-Dump einrichten?

Wie kann man einen Java-Dump einrichten?

Generell kann man einen Windows-Dump einrichten, siehe Wie kann man ein Dump erstellen (ehemals DrWatson, Windows-DMP)?. Dies erfordert allerdings auch einen Serverneustart. Bei den Services hilft er u.U. nicht weiter, da Java-Prozesse abstürzen können.

Es gibt ein Alternative über die Dienstverwaltung ein Java-Dump zu erhalten (= hprof-Datei). Man kann einfach die Dump-Parameter ergänzen und den Dienst neu starten.

Wichtig: Ein Dump wird so groß wie der Speicher, den der Dienst belegt (analog Windows-Dump). Beispiel: wenn der Dienst mit 2 GM RAM läuft, wird auch 2 GB ins Dateisystem geschrieben.

 

Schritt für Schritt Anleitung

Die nachfolgende Anleitung wird am Beispiel enaio Documentviewer erklärt. Die Option steht auch bei allen anderen Diensten zur Verfügung.

Vorgehen:

Dazu ein beliebiges Verzeichnis erstellen.
Beispiel: e:\enaio\services\documentviewer\dumps

image-20260220-113618.png
  1. In das BIN-Verzeichnis des enaio Documentviewers gehen und die <dienstname>w.exe starten

  2. Dann auf den Tab Java wechseln:

    image-20260220-075026.png

  3. Hier die beiden Parameter ergänzen:
    Achtung! Wenn man das erste Mal den Dump einrichtet, ist die Reihenfolgen wichtig und darauf achten, dass es keine Leerzeichen gibt, sonst startet der Dienst nicht mit dem Fehler “Datei nicht gefunden”.
    Es gibt noch mehr Parameter für Dateiname, Mini-Dump …

    Minimal-Parameter:
    -XX:HeapDumpPath=<Pfad oder Datei>
    -XX:+HeapDumpOnOutOfMemoryError


    zum Kopieren:

    -XX:HeapDumpPath=dumps -XX:+HeapDumpOnOutOfMemoryError

     

    Beispiel:
    nur “dumps” eingetragen
    Wenn man nur dumps einträgt und das Verzeichnis existiert, wird das Dump-File in das Verzeichnis geschrieben. Verwendet wird der Standardname. Wenn es das Verzeichnis dumps nicht gibt, wird dies als Dump-Datei verwendet.
    Man kann alternativ auch den Pfad eintragen (Windows-Schreibweise).

    Beispiel mit relativem Pfad:

    image-20260220-075251.png


    Beispiel mit Pfad-Angabe:

    image-20260220-123125.png
  4. Mit “OK” speichern.

Dazu über die Windows-Dienstverwaltung den Dienst enaio Documentviewer heraussuchen und neu starten.

Empfehlung: Das catalina-Log prüfen. Hier sollten die neuen Parameter zu finden sein.

Beispiel:

image-20260220-122953.png

 

 

Wenn der Dienst nun abstürzt, wird ein entsprechendes Dump geschrieben.
Beispiel:

image-20260220-114311.png

 

 

Verwandte Artikel