JMeter Remote mit putty (SSH) Non-GUI auf Console ausführen

JMeter Remote Ausführung ohne GUI (Headless) auf Unix-Console, über Putty (SSH)

Die Lösung der JMeter Remote Ausführung ist auch in der JMeter Dokumentation zu finden. Wer jedoch den gleichen Fehler wie ich macht und nach dem Thema “googelt”, findet Lösungen über “Änderungen in JMeter-Property-Files” wie auch Aussagen, dass man eine Verbindung mit möglicher GUI (X11) erstellen muss. Letzteres ist schlichtweg falsch und ersteres zumindest nicht die minimale Lösung, denn dies geht viel einfacher.

Wer versucht JMeter beispielsweise unter einer Console in Putty (SSH) Remote zu starten, bekommt folgende Meldung:

java.awt.HeadlessException: No X11 DISPLAY

Im Detail: "java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it"

Dies liegt einfach an den falschen JMeter Remote Start-Parametern. Wichtig ist hierbei der Parameter “-n”, welcher JMeter im “Non-GUI Mode” (Headless, ohne GUI) startet.

Da man in diesem Headless-Mode selbstverständlich keine GUI hat, sollte man die Ergebnisse entweder über Consolen-Parameter “-l” in eine Datei schreiben lassen oder das JMeter Projekt zusätzlich mit Listenern versehen, die so konfiguriert sind, dass diese ihre Ergebnisse in Dateien loggen.

Lösung: Remote Aufruf von JMeter mit den richtigen Parametern

Hier ein beispielhafter Non-GUI JMeter Remote Aufruf, aus dem JMeter “bin” Verzeichnis. Mit diesem kann man JMeter unter einer Putty-Session starten:

Aufruf JMeter unter Putty (SSH) Session:

JMeter Remote
./jmeter.sh -n -t Mein_JMeter_Projekt.jmx -l Mein_Result_File.jtl

JMeter-Parameter:

-n sorgt für Non-GUI-Mode.
-t gibt den Pfad und Dateiname des JMeter Projekts an.
-l gibt den Pfad und Dateiname eines Ergebnis-Logfiles an.

Im Non-GUI -Mode kann JMeter neben diesem Komanndozeilen-Start auch unter Ant oder Maven gestartet werden.

Auswerten der JMeter Daten aus dem Lauf im Non-GUI-Mode

Die Ergebnis-Dateien könnt Ihr am Ende in eine Umgebung kopieren, in dem Ihr eine GUI habt, zB. nach Windows falls ihr Putty unter Windows benutzt. Und dort kann man wiederum JMeter mit GUI starten und die Ergebnisdateien in den Listenern laden, um die Ergebnisse visuell darzustellen und auszuwerten.

JMeter Error “No X11 DISPLAY” trotz GUI access?

Falls Ihr gerade gar nicht auf einer Putty Console (bzw. per SSH) unterwegs seid, sondern direkt auf der unix Maschine und somit auch Zugriff auf die GUI Schicht (X11) habt, könnt Ihr JMeter unter Unix natürlich auch mit GUI Starten. Falls dann die gleiche Fehlermeldung “java.awt.HeadlessException: No X11 DISPLAY… ” erscheint, sollte es helfen, folgende Umgebungsvariable zu setzen, insofern Ihr am Haupt-Display sitzt:
export DISPLAY=:0.0

Feedback, Tipps und Fragen, sehr gerne in den Kommentaren! Auch gerne bei anderweitigen Problemen mit dem Start in Non-GUI oder GUI-Mode.

Fanden Sie den Artikel hilfreich?
[Gesamt: 0 Durchschnitt: 0] -

Leave a Reply