Synthetisches Enterprise Monitoring mit Dynatrace

Integration externer Automationswerkzeuge in Dynatrace am Beispiel Micro Focus LoadRunner

Synthetisches Monitoring für Enterprise Unternehmen mit Dynatrace
Fabian Klose & Matthias Scholze - März 2019
Der folgende Blogbeitrag zeigt auf, wie ein synthetisches Monitoring für proprietäre Technologien in Enterprise-Unternehmen mittels externer Automationswerkzeuge in Dynatrace SaaS und Managed umgesetzt werden kann.

Motivation für den Einsatz externer Automationswerkzeuge für das synthetische Monitoring mit Dynatrace

Dynatrace ist eine Full-Stack IT-Monitoring Lösung, welche unter anderem eine Komponente für synthetisches Monitoring von HTTP-Anfragen und Browser-Klickpfaden anbietet. Der Vorteil von Dynatrace ist, dass die Verfügbarkeit und Antwortenzeiten aus dem synthetischen Monitoring mittels Baselining in die automatisierte Root-Cause Analyse im Gesamtkontext der Anwendung übernommen werden.
Für Enterprise-Unternehmen mit deren historisch gewachsener proprietärer IT-Landschaft ist die auf HTTP-beschränkte Unterstützung in Dynatrace nicht ausreichend. Citrix, RDP, SAP GUI, Rich-Clients, E-Mail, Samba, MQTT etc. sind typische im synthetischen Monitoring zu überwachende Technologien.
Des Weiteren verfügen Unternehmen mit einer starken IT-Abhängigkeit in der Regel über eine Plattform für synthetisches Monitoring mit einer umfangreichen Skript-Basis und individuell im internen Netzwerk positionierten Messrechnern.
Somit liegt es nahe, die bestehenden Plattformen sowie Skripte für das synthetische Monitoring weiterzuverwenden, externe Automationswerkzeuge für die Überwachung proprietärer Technologien einzusetzen und die Vorteile der Dynatrace Plattform durch Integration der synthetischen Monitoringdaten in Dynatrace zu nutzen.

Proprietäre Technologien in moderne Ansätze integrieren

Externe (Test-) Automationswerkzeuge, wie beispielsweise Unified Functional Testing, LoadRunner, Ranorex, TestComplete, Tosca usw., unterstützen eine große Bandbreite an Technologien und ermöglichen die Abbildung komplexer Business-Logiken in den Skripten. In diesem Blogbeitrag zeigen wir eine Integration auf Basis des Produktes LoadRunner der Firma Micro Focus auf.

Integration der LoadRunner Messdaten in Dynatrace

Folgendes Beispiel zeigt ein auf LoadRunner basierendes Citrix-Skript auf, das seine Messdaten pro Schritt für das Baselining, die Root-Cause Analyse und die Visualisierung an Dynatrace sendet:
// Step 1: CITRIX: connect
lr_start_Transaction('CITRIX-CONNECT')
ctrx_connect_server("XXX.XXX.XXX.XXX", "Citrix", "xxxxxxxxx", "DOMAIN", CTRX_LAST);
stepDuration = lr_get_TransactionDuration("durationTime") * 1000;
lr_end_Transaction('CITRIX-CONNECT', lr.AUTO)
// Store duration of CITRIX connect for Dynatrace temporarily 
addStep("CITRIX: connect", stepDuration);
...
// Send measures of all steps to Dynatrace 
sendStepsToDynatrace(success);
Code-Beispiel: LoadRunner-Skript für Citrix ICA-Aufrufe inklusive der Dynatrace Integration
 
Pro Citrix-Aktion wird die Dauer der Durchführung (Transaktion) intern erfasst. Am Ende des Skriptes (Iteration) werden alle Messdaten zzgl. der Bewertung, ob die Gesamtdurchführung erfolgreich war, an Dynatrace übergeben.
QMETHODS-intern haben wir uns dazu eine entsprechende Bibliothek erstellt, welche die Erfassung im Skript und das Senden der Messdaten an Dynatrace kapselt (addStepResult, sendStepResultsToDynatrace). Dadurch können wir bestehende Skripte schnell erweitern und erhalten die Lesbarkeit der Skripte. Die Übertragung der Messdaten erfolgt über eine REST-basierte API (siehe Referenzen).

Zeitgesteuerte Ausführungsumgebung

Für die zeitgesteuerte Ausführung der synthetischen Monitoring-Skripte empfehlen wir die Nutzung von Jenkins in der Kombination mit dem Jenkins-Plugin Micro Focus Application Automation Tools. Das Plugin stößt die Ausführung der gewünschten Skripte über den LoadRunner-Controller auf den entsprechenden Messrechner-Instanzen an.
Synthetisches Monitoring für Enterprise Unternehmen mit Dynatrace
Abbildung 1: Systemarchitektur eines synthetisches Monitoring mit externen Automationswerkzeugen in Dynatrace
 

Zentrales Synthetisches Monitoring

Durch das Integrieren der synthetischen Messdaten lassen sich die Vorteile der Dynatrace Plattform wie Baselining, Root-Cause Analyse, starke Visualisierungen und Erzeugung von Incident Tickets für alle externen Automationswerkzeuge zentral nutzen. Folgende Abbildungen zeigen die Visualisierungen von Verfügbarkeit und Antwortzeitverhalten für die synthetischen Citrix- und MQTT-Monitoringdaten:
Synthetisches Monitoring für Enterprise Unternehmen mit Dynatrace
Abbildung 2: Visualisierung der Verfügbarkeit in Dynatrace für das synthetische Monitoring von CITRIX mit LoadRunner
 
Synthetisches Monitoring für Enterprise Unternehmen mit Dynatrace
Abbildung 3: Visualisierung des Antwortzeitverhaltens in Dynatrace für das synthetische Monitoring von MQTT (IoT) mit LoadRunner
 
In Dynatrace wird eine einheitliche Visualisierung für synthetische Monitore unabhängig vom Mechanismus der Erhebung durch Dynatrace oder externe Automationswerkzeuge dargestellt. Lediglich die Integration von Screenshots wird aktuell nur für Dynatrace basierte Browser-Klickpfade unterstützt.
Entsprechende Visualisierungen stehen ebenso im Dashboard zur Verfügung. Somit lassen sich alle internen und externen synthetischen Monitore in einer Ansicht gemeinsam und einheitlich darstellen.
Synthetisches Monitoring für Enterprise Unternehmen mit Dynatrace
Abbildung 4: Dynatrace Dashboard mit dem auf LoadRunner und Dynatrace basierenden synthetischen Monitoring für CITRIX, MQTT (IoT), Browser-Klickpfad und HTTP-Anfrage
 

Potential der LoadRunner Protokolle in Dynatrace nutzen

Der LoadRunner mit seiner breiten technologischen Abdeckung bietet Enterprise Unternehmen die Chance, viele ihrer proprietären Komponenten und Anwendungen synthetisch zu monitoren und gleichzeitig die Stärken der modernen und zukunftsfähigen Dynatrace Monitoring-Plattform zu nutzen.
Folgende Protokolle werden vom LoadRunner unterstützt:
  • Ajax - Click and Script 
  • Citrix ICA 
  • COM/DCOM 
  • DNS (Domain Name Resolution) 
  • Flex 
  • FTP (File Transfer Protocol) 
  • IMAP (Internet Messaging) 
  • Java 
  • Java over HTTP 
  • Java Record Replay 
  • LDAP (Listing Directory Service) 
  • MAPI (Microsoft Exchange) 
  • MQTT 
  • .NET 
  • ODBC 
  • Oracle - 2 Tier 
  • Oracle Web 
  • Oracle NCA 
  • POP3 (Post Office Protocol) 
  • RDP (Remote Desktop Protocol) 
  • RTE (Remote Terminal Emulation) 
  • SAP - Web 
  • SAP GUI 
  • Siebel - Web 
  • Silverlight 
  • SMP (SAP Mobile Platform) 
  • SMTP (Simple Mail Protocol) 
  • TruClient - Mobile Web 
  • TruClient - Native Mobile 
  • Web HTTP(S)/HTML 
  • WebServices 
  • Windows Sockets 

Kosten für die Integration von externen Automationswerkzeugen

Dynatrace bietet eine entsprechende API für die Integration externer Automationswerkzeuge ins synthetische Monitoring an. Die Lizenzkosten auf Seiten Dynatrace basieren auf der Anzahl der kundenspezifischen Metriken. In unseren CITRIX und MQTT Beispielen haben wir zusammen 7 Messschritte (Aktionen) von einem Messstandort aus verwendet, was Kosten von unter 40 Euro pro Jahr bedeutet. Diese Kosten können unter Umständen gegen 0 Euro gehen, da für jede Dynatrace Instanz auch ein kostenloses Kontingent an API-Nutzung enthalten ist.
Unseren Anwendungsfall konnten wir mit der kostenlosen Open-Source Software Jenkins, dem kostenlosen Jenkins-Plugin von Micro Focus und der kostenlosen Community-Version des Micro Focus LoadRunners bestreiten. Final sind dann noch die Kosten für die Erstellung und Wartung der synthetischen Monitoring-Skripte sowie die Beschaffung und den Betrieb der Messrechner einzubeziehen.
Die kostengünstige Nutzung der Dynatrace API im Vergleich zu den Dynatrace DEM Units ermöglicht es ebenfalls, Kosten durch die Integration von externen Automationswerkzeugen zu sparen.

Fazit

Die Stärken von professionellen Automations- und modernen Monitoring-Werkzeugen mittels einer Integration zu kombinieren, ist speziell für Enterprise-Unternehmen ein großer Gewinn und erleichtert den Spagat zwischen proprietären und zukünftigen Technologien. Anbei noch einmal eine Zusammenfassung aller Vorteile:
 
  • Einbeziehung proprietärer Technologien in das synthetische Monitoring 
  • Nutzung moderner KI-basierter Ansätze - Baselining und Root-Cause-Analyse 
  • Zentrale, einheitliche und moderne Visualisierung aller synthetischen Monitore 
  • Wiederverwendung bisheriger synthetischer Monitoring-Skripte und Ausführungsplattformen 
  • Kunden-individuelle Positionierung der Messrechner 
  • Abbildung komplexer Skript-Logiken 
  • Reduktion von Lizenzkosten 
 

Referenzen

Integrate external synthetic data with Dynatrace via API
Micro Focus LoadRunner
Jenkins
Jenkins-Plugin - Micro Focus Application Automation Tools
Übersicht IT-Monitoring Werkzeuge - QMETHODS
Übersicht Last- & Performancetest Werkzeuge - QMETHODS



Ihr Kommentar zum Blog-Beitrag

Nennen Sie uns bitte Ihren Namen und E-Mail-Adresse zur Verifikation. Die E-Mail Adresse wird nicht veröffentlicht!

Ich habe die Hinweise zum Datenschutz gelesen und akzeptiere diese.

Keywords

Dynatrace

 

Synthetisches Monitoring

 

Messrechner

 

LoadRunner

 

Antwortzeit

 

Verfügbarkeit

 

Service Level Agreements

 

SLA

 

Citrix

 

ICA

 

IoT

 

MQTT

 

Jenkins