Verbindung von JMeter mit Prometheus & Grafana für Echtzeit-Einblicke
14:24, 25.08.2026
Apache JMeter ist ein beliebtes Tool für Lasttests und die Leistungsüberwachung. Es ermöglicht es Benutzern, hohe Lasten zu simulieren und das Systemverhalten in Echtzeit zu analysieren. Die integrierte Berichtsfunktion reicht jedoch möglicherweise nicht aus, wenn eine kontinuierliche Echtzeitüberwachung erforderlich ist.
In diesem Fall können Sie Zusatztools wie Prometheus und Grafana nutzen. Diese ermöglichen es Ihnen, Leistungsmetriken während der Testausführung dynamisch zu visualisieren.
In diesem Artikel werden wir untersuchen, wie sich JMeter mit Prometheus und Grafana integrieren lässt, um zuverlässige Leistungsanalysen in Echtzeit zu erhalten.
Einführender Überblick
JMeter bietet hervorragende Funktionen zur Testausführung, doch die Integration mit Prometheus und Grafana eröffnet neue Möglichkeiten hinsichtlich der Observability. Prometheus erfasst und speichert Metriken, während Grafana diese über dynamische Dashboards visualisiert. Durch die Anbindung von JMeter an diesen Stack mithilfe des JMeter-Prometheus-Plugins können Tester Live-Metriken einsehen, Engpässe erkennen und sofort Maßnahmen ergreifen.
Was ist Prometheus?
Prometheus ist ein Open-Source-Toolkit zur Systemüberwachung und Alarmierung, das ursprünglich von SoundCloud entwickelt wurde. Es sammelt und speichert Metriken als Zeitreihendaten, bietet eine flexible Abfragesprache (PromQL) und kann bei benutzerdefinierten Bedingungen Alarmmeldungen ausgeben. Prometheus ruft Metriken von Endpunkten ab, die von Zielanwendungen und -diensten bereitgestellt werden, wodurch es sich hervorragend für die Überwachung dynamischer Umgebungen wie Microservices eignet.
Was ist Grafana?
Grafana ist eine leistungsstarke Visualisierungs- und Analyseplattform, die mit einer Vielzahl von Datenquellen, darunter auch Prometheus, zusammenarbeitet. Mit Grafana können Nutzer interaktive und anpassbare Dashboards erstellen, um wichtige Metriken in Echtzeit zu überwachen, Warnmeldungen einzurichten und Dashboards teamübergreifend zu teilen. Das umfangreiche Plugin-Ökosystem von Grafana erweitert dessen Funktionalität noch weiter.
Was ist das JMeter-Prometheus-Plugin?
Das JMeter-Prometheus-Plugin stellt JMeter-Metriken als HTTP-Endpunkt bereit, den Prometheus abrufen kann. Es fungiert als Brücke zwischen JMeter und Prometheus und erfasst Informationen wie die Anzahl der Anfragen pro Sekunde, Antwortzeiten, Fehlerzahlen und mehr. Dieses Plugin ist für die Echtzeitüberwachung von Leistungstests unverzichtbar.
Voraussetzungen
Bevor Sie beginnen, stellen Sie Folgendes sicher:
- Java (JDK 8 oder höher)
- Apache JMeter installiert
- Internetverbindung zum Herunterladen der Abhängigkeiten
Installation des JMeter-Prometheus-Plugins
Laden Sie zunächst die Plugin-JAR-Datei (jmeter-prometheus-plugin-<version>.jar) von der entsprechenden Seite herunter: GitHub-Repository.
Legen Sie anschließend die JAR-Datei im Verzeichnis /lib/ext Ihrer JMeter-Installation ab.
Anschließend können Sie JMeter neu starten, um das Plugin zu aktivieren.
Prometheus installieren
Hierfür müssen Sie Prometheus von der offiziellen Website herunterladen. Entpacken Sie anschließend das Archiv und suchen Sie die Konfigurationsdatei „prometheus.yml“.
Wenn alles fertig ist, fügen Sie einen neuen Job hinzu, um JMeter-Metriken zu erfassen:
- job_name: 'jmeter'
metrics_path: '/metrics'
static_configs:
- targets: ['localhost:9270']
Grafana installieren
Laden Sie Grafana von grafana.com. Befolgen Sie anschließend die Installationsschritte für Ihr Betriebssystem.
Starten Sie Grafana nach der Installation über das Terminal oder den Dienstmanager.
Konfigurieren des JMeter-Prometheus-Plugins in JMeter
- Öffnen Sie JMeter und erstellen Sie Ihren Testplan.
- Fügen Sie Ihrem Test den „Backend Listener“ hinzu.
- Setzen Sie die „Backend Listener Implementation“ auf io.prometheus.jmeter.backendlistener.PrometheusBackendListenerClient.
- Konfigurieren Sie die Parameter:
- port: 9270 (oder ein beliebiger freier Port)
- metric_name: JMeter
- Perzentile: 90;95;99
Das Plugin stellt nun Metriken unter http://localhost:9270/metrics bereit.
Prometheus einrichten
Prometheus starten
Prometheus mit folgendem Befehl ausführen:
./prometheus --config.file=prometheus.yml
Prometheus beginnt nun, Daten von JMeter zu erfassen und lokal zu speichern.
Ausführen des JMeter-Tests
Starten Sie den Test in JMeter. Während der Test läuft, sendet der Backend-Listener Leistungsdaten an den für Prometheus konfigurierten Endpunkt.
Sie können dies überprüfen, indem Sie in Ihrem Browser auf http://localhost:9270/metrics zugreifen.
Anzeigen von JMeter-Metriken in Prometheus
Sobald der Test läuft und Prometheus Daten erfasst, öffnen Sie http://localhost:9090 (Prometheus-Benutzeroberfläche). Geben Sie eine Beispiel-PromQL-Abfrage ein, zum Beispiel:
rate(jmeter_sample_count[1m])
Dadurch wird die Anzahl der Samples (Anfragen) angezeigt, die JMeter pro Minute generiert. Weitere nützliche Metriken sind jmeter_sample_duration sowie jmeter_sample_failure_count.
Wo befindet sich Grafana?
Grafana läuft standardmäßig unter http://localhost:3000. Melden Sie sich mit den Standard-Anmeldedaten (admin / admin) an und legen Sie ein neues Passwort fest, wenn Sie dazu aufgefordert werden.
Überprüfung der Prometheus-Datenquelle in Grafana
- Gehen Sie zu Konfiguration > Datenquellen.
- Klicken Sie auf Datenquelle hinzufügen und wählen Sie Prometheus.
- Geben Sie die Prometheus-URL ein (http://localhost:9090) und klicken Sie auf „Speichern & Testen“.
- Grafana sollte eine erfolgreiche Verbindung bestätigen.
Erstellen eines Grafana-Dashboards
Nachdem die Datenquelle nun verbunden ist, erstellen Sie Ihr erstes Dashboard.
- Klicken Sie auf „Erstellen“> „Dashboard“> „Neues Panel hinzufügen“.
- Verwenden Sie Abfragen in der Prometheus Query Language (PromQL), um JMeter-Metriken abzurufen.
Beispiel:
rate(jmeter_sample_count{label="Login"}[1m])
- Passen Sie die Visualisierungstypen an (z. B. Diagramm, Messanzeige, Balkendiagramm).
- Speichern Sie das Dashboard zur Wiederverwendung.
Beispiel für ein Grafana-Dashboard
Ein funktionales Dashboard für Leistungstests könnte Folgendes enthalten:
- Anfragen pro Sekunde (RPS)
- Durchschnittliche und Perzentil-Antwortzeiten (90., 95., 99.)
- Fehlerrate im Zeitverlauf
- Aktive Benutzer
- Durchsatz
Diese Visualisierungen bieten Echtzeit-Einblicke in die Systemleistung unter Last und ermöglichen so eine einfachere Erkennung von Problemen sowie die Überprüfung von Verbesserungen.
Fazit
Die Integration von JMeter mit Prometheus und Grafana ermöglicht es Testern und Entwicklern, die Leistung in Echtzeit zu überwachen und bei Bedarf sofort Maßnahmen zu ergreifen. Das JMeter-Prometheus-Plugin fungiert als wichtige Brücke, indem es Metriken für die Erfassung durch Prometheus bereitstellt; Grafana wandelt diese Daten dann in aussagekräftige, umsetzbare Dashboards um. Ganz gleich, ob Sie eine Webanwendung einem Stresstest unterziehen oder hohe Nutzerlasten in produktionsähnlichen Umgebungen simulieren – diese Konfiguration bietet Ihnen die nötige Transparenz, um die Systemintegrität und -leistung aufrechtzuerhalten.
Mit nur wenigen Installations- und Konfigurationsschritten können Sie Ihre Leistungstestverfahren von statischen Berichten auf Echtzeit-Beobachtbarkeit ausweiten.