Eine moderne IT-Infrastruktur erfordert einen umfassenden Ansatz für die Überwachung und das Testen der Anwendungsleistung. Immer mehr Unternehmen auf der ganzen Welt nutzen eine Kombination aus Application Performance Management (APM) und Performance Testing, um erfolgreiche DevOps-Prozesse zu implementieren und den allgemeinen Zustand ihrer IT-Umgebung zu unterstützen.

Während APM-Plattformen wie NewRelic und Dynatrace häufig verwendet werden, um wichtige Leistungsmetriken von Anwendungsservern, Datenbanken und anderen Komponenten der IT-Infrastruktur zu verfolgen und zu analysieren, sind Lasttest-Tools wie LoadView eine hervorragende Lösung als Teil von Leistungstests vor und nach der Produktion. Die Integration von Lasttests in einen Webentwicklungslebenszyklus gibt DevOps-Teams umfassende Einblicke in Änderungen der Webservice- und Anwendungsleistung unter erheblicher Benutzerlast und hilft, Engpässe in der unterstützenden Infrastruktur zu erkennen. In diesem Artikel führen wir Sie durch die Integration von Dynatrace und LoadView, um die wichtigsten Schritte der Integration von APM- und Lasttestwerkzeugen zu demonstrieren.

Übersicht über die Integration von Dynatrace und Loadview

Die wichtigsten Prinzipien der Integration der APM-Plattform mit Lasttestwerkzeugen werden im Artikel zur Integration von Dynatrace- und Lasttestwerkzeugen auf der offiziellen Dynatrace-Website beschrieben. Kurz gesagt, während der Ausführung eines Auslastungstests generiert ein Auslastungstesttool Tausende von HTTP-Anforderungen an eine Zielwebsite oder Webanwendung. Sie können Ihre Testanforderungen mit bestimmten HTTP-Attributen markieren und den Auslastungstestverkehr nach diesen Attributen in Dynatrace herausfiltern.

Wir können den Prozess der LoadView & Dynatrace-Integration in die folgenden Schritte unterteilen:

  1. Konfigurieren von Extraktionsregeln für die benutzerdefinierten HTTP-Header in Dynatrace.
  2. Erstellen eines Webanwendungs-Auslastungstestskripts mit LoadView.
  3. Markieren von Auslastungstestanforderungen mit zusätzlichen HTTP-Headern, um Überwachungsdaten nach definierten Tags in Dynatrace zu filtern.
  4. Ausführen des Auslastungstests in LoadView.
  5. Anwenden des Filters und Abrufen der relevanten Anforderungen in Dynatrace für weitere Drilldown-Analysen.

Schritt-für-Schritt-Integrationsleitfaden für Loadview & Dynatrace

Beginnen wir mit dem Konfigurieren von Extraktionsregeln für die benutzerdefinierten HTTP-Header.

Gehen Sie in Dynatrace zu Einstellungen > Serverseitige Serviceüberwachung > Anforderungsattribute und legen Sie die Extraktionsregel für ein neues Anforderungsattribut loadtest” und den Header-Parameter “x-dynatrace” fest, wie auf der offiziellen Dynatrace-Website beschrieben.

Alternativ zu benutzerdefinierten HTTP-Headern können Sie Ihre Überwachungsdaten nach den User-Agent-Headern filtern.

Standardmäßig enthalten alle Webanwendungs- und Website-Auslastungstests, die in realen Browsern von LoadView ausgeführt werden, das DMBrowser-Suffix im User-Agent-Anforderungsheader:

GET /?gws_rd=ssl HTTP/1.1
Host: www.google.com
Connection: keep-alive
...

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36DMBrowser/2.1 (UV)

Daher können Sie das DMBrowser-Attribut in einer Dynatrace-Extraktionsregel verwenden, um Anforderungen aus LoadView herauszufiltern.

In der nächsten Phase müssen wir einen Auslastungstest mit getaggten Testanforderungen erstellen. Lassen Sie uns ein einfaches Auslastungstestskript für Webanwendungen in LoadView erstellen. Um das Skript aufzuzeichnen, verwenden wir das EveryStep Scripting Tool.

Nachdem das Skript aufgezeichnet wurde, fügen wir dem Skript einen benutzerdefinierten Header hinzu. Um LoadView-Anforderungen mit einem benutzerdefinierten Header zu versehen, verwenden wir die Funktion Set Request Header, die im Skript-Kontextmenü verfügbar ist (Network > Set Request Header). Die vollständige Beschreibung der Methode finden Sie im Artikel Add Custom Header to the EveryStep Script unserer Knowledge Base.

Benutzerdefinierte Kopfzeile hinzufügen

Als nächstes geben wir das folgende Schlüssel-Wert-Paar an:

  • HEADER-SCHLÜSSEL : x-dynatrace
  • HEADER-WERT : loadtest

Dynatrace Integration Request Header

Jetzt sind wir bereit, mit dem Auslastungstestszenario fortzufahren, wie unter Einrichten von LoadView für Auslastungs- und Belastungstests beschrieben, und können den Test in LoadView ausführen. LoadView-Anfragen werden in Dynatrace mit dem angegebenen Anforderungsattribut zur weiteren Analyse versehen.