Fehlersuche in der Java-Welt

Feature | 4. April 2005 von admin 0

Mit Verdruss wird jeder Autofahrer reagieren, dem während der Fahrt plötzlich der Motor den Dienst verweigert. Das Warten auf den Abschleppdienst ist zwar frustrierend, doch immerhin weitgehend ungefährlich. Nicht auszudenken hingegen wären die Folgen eines solch unangekündigten und nicht nachvollziehbaren Versagens bei einem Flugzeug. Piloten verfügen daher im Cockpit über eine Vielzahl von Instrumenten und Diagnosewerkzeugen, die Ihnen Aufschluss über auftretende Probleme geben und somit Strategien zu deren Behebung eröffnen.

In der Welt der betriebswirtschaftlichen Software entspricht ein Flug ohne Probleme einem reibungslos abgewickelten Geschäftsprozess. Was aber, wenn die IT versagt? Damit IT-Manager für diesen Fall nicht im Blindflug agieren, gewährleistet SAP für Ihre ABAP-Anwendungen bereits seit langer Zeit einen effizienten Support von SAP-Lösungen und damit deren hohe Verfügbarkeit. Mit Solution Manager Diagnostics ist es nun gelungen, all die in der ABAP-Welt gesammelten Erfahrungen in den Bereich der Java-Anwendungen zu übertragen.
Mit einem zentralen Solution Manager Diagnostics lassen sich auch mehrere Java-Anwendungen parallel überwachen. Es ist möglich, eine komplette IT-Lösung zu betrachten, sich auf spezielle Landschaften zu konzentrieren – etwa Entwicklung, Qualitätssicherung oder Produktion – oder spezifische Komponenten auszuwählen. Mit dieser Funktionalität lassen sich Fehlerursachen schnell ermitteln und beheben. Damit werden die Auszeiten deutlich verkürzt und die Kosten, die durch die Störung des Geschäftsbetriebs verursacht werden, signifikant minimiert. Zum anderen reduziert Solution Mager Diagnostics den Aufwand für die Beseitigung einer Störung – und damit auch die Total Cost of Ownership.

Von Störungen in der Datenbank…

Solution Manager Diagnostics bietet ein umfangreiches Spektrum an Funktionen, mit denen sich eine IT-Infrastruktur überwachen lässt. Er übernimmt beispielsweise das Monitoring des Betriebssystems, der Datenbank, der Aktivitäten der Java-Anwendungen, der Performance und von Logs. Zusätzlich wird das Reporting von Änderungen der Konfiguration unterstützt, die auf Grund von vielfältigen Abhängigkeiten ebenfalls Störungen in Anwendung verursachen können. In Summe überwacht Solution Manager Diagnostics hiermit diejenigen Bereiche, in denen am häufigsten mit Störungen zu rechnen ist.
Dem Triebwerk beim Flugzeug entsprechen bei Computersystemen am ehesten Betriebssystem und Datenbank. Dieser Bereich kann viele Störungen bei Java-Anwendungen verursachen. Die Ursachen liegen unter anderem in einer zu großen Belastung der CPU, einem zu hohen Verbrauch von Speicherplatz oder einer zu geringen Kapazität der Datenbank oder des Cashe. Um diese Ursachen aufzuspüren, verwendet Solution Manager Diagnostics für das Monitoring die Computing-Center-Management-System-Infrastruktur (CCMS) und darüber hinaus Agenten, die Daten aus dem Betriebssystem und der Datenbank des Anwendungssystems sammeln und an den zentralen Solution Manager Diagostics senden. Dort werden die eingehenden Daten ausgewertet und Störungsquellen ermittelt. Solution Manager Diagnostics bedient sich hierzu der gleichen Funktionalität, wie SAP sie auch zur Problemanalyse von ABAP-Anwendungen verwendet. Ein Vorteil für die Support-Organisation eines Kunden, die auf ihre bereits bestehende ABAP-Erfahrung nun auch im JAVA-Umfeld zurückgreifen können. Typischerweise lassen sich Probleme mit dem Betriebssystem oder der Datenbank durch eine Erweiterung der Hardware oder durch Änderung von Parametern beheben.
Ein Ausfall des Navigationssystems des Flugzeugs und Instabilitäten oder Synchronisationsprobleme in der JAVA-Anwendung haben eine Gemeinsamkeit: Sie erschweren es, das anvisierte Ziel zu erreichen. So verringern eventuell Probleme mit der Speicherverwaltung auf Dauer die Performance einer Anwendung. Um dieser Art von Störungen auf den Grund zu gehen, muss bekannt sein, was in der Java Virtual Machine vorgeht und welcher Prozess auf welchem Java Thread läuft. Dazu stellt JAVA so genannte Thread Dumps zur Verfügung, gewissermaßen Schnappschüsse des momentanen Systemzustands. Solution Manager Diagnostics ermöglicht es nun, diese Thread Dumps effizient zu verwalten. So lassen sich beispielsweise Thread Dumps von zentraler Stelle aus auf allen überwachten Systemen anstoßen. Auch ist es möglich, diese Anfragen beispielsweise zehn Mal pro Minute zu wiederholen, um sich ein Bild über die zeitliche Entwicklung des Systems zu verschaffen. Für die Analyse bietet Solution Manager Diagnostics ein Reporting und den Vergleich der Thread Dumps. Auf diese Weise werden kritische Zustände und Veränderungen im System offensichtlich.

… bis zu Fehlern durch Konfigurationsänderungen

Überhaupt: Die Performance ist mehr oder weniger die Kraftstoffleitung der IT. Laufen in einer größeren IT-Landschaft mehrere Anwendungen parallel, so können sie sich bezüglich der Performance gegenseitig beeinflussen. Wie etwa in einem Unternehmensportal. Oftmals werden dort eine Vielzahl von iViews betrieben, die auch auf mehrere Backend-Systeme zugreifen. Ist die Performance schlecht, so gilt es bei der Ursachenermittlung zunächst diejenige Anwendung zu identifizieren, die der Hauptauslöser dieser Probleme ist. Für SAP Enterprise Portal stellt Solution Manager Diagnostics beispielsweise das Web Content Reporting zur Verfügung. Es gibt Aufschluss darüber, wieviele Anwender in einem bestimmten Zeitraum auf das Portal zugreifen und welche iViews oder Seiten hierbei besonders häufig aufgerufen wurden? Diese Daten lassen zum einen erkennen, ob die festgestellten Performanceprobleme generell von einer besonders hohen Anzahl von Anwendern verursacht wurden. Wenn nein ist die Auskunft, welche iViews oder Seiten zu Zeiten der Performanceprobleme häufig verwendet wurden ein guter Ansatzpunkt zur weiteren Analyse. Offenbar zahlen sich gerade dort Verbesserungen der Performance aus.
Um eine Anwendung oder ein iView detailliert unter die Lupe zu nehmen, steht die http-Analyse zur Verfügung. Eine Anwendung enthält mehrere http-Requests, zum Beispiel zwischen Browser und Anwendung oder zur Kommunikation mit Services auf Backend-Systemen. Aus der Dauer der Requests lassen sich mehrere Informationen ableiten, zum Beispiel, ob die Zeit zu einem größeren Anteil auf dem Server oder im Netzwerk verbraucht wurde, ob die Requests in der geplanten Reihenfolge ablaufen, welche Services besonders viel Performance beanspruchen, oder welche Requests fehlerhaft waren. Solution Manager Diagnostics sammelt mit Hilfe der Agenten Informationen über alle http-Requests und erstellt daraus einen korrelierten Bericht, dem sich entnehmen lässt, an welchen Stellen es mit der Performance hakt.
Genauso wie es unerlässlich ist, Bauteile bei einem Flugzeug auszuwechseln, bevor diese ausfallen, muss auch in der IT gelegentlich in die Konfiguration einer Anwendung eingegriffen werden, wenn etwa die zugrunde liegenden Geschäftsprozesse geändert werden sollen. Immer wieder führen solche Änderungen in der Konfiguration zu Störungen, eine unbeabsichtigte “Nebenwirkung”, da einzelne Konfigurationsparameter Einfluss auf unterschiedliche Bereiche einer Anwendung haben können. Da eine Anwendung in der Regel viele Konfigurationsparameter besitzt, ist es oftmals schwer festzustellen, welche Änderung eine Störung ausgelöst hat. Das Configuration Change Management des Solution Manager Diagnostics bietet hier eine wesentliche Hilfe: Es erstellt regelmäßig Schnappschüsse der Konfigurationsdaten. Durch einen Vorher-Nachher-Vergleich lassen sich diesen Schnappschüssen Hinweise auf die Ursache einer Störung entnehmen und sich die Fehlersuche somit zuspitzen.

Verfügbar mit SAP NetWeaver’04

Solution Manager Diagnostics ist Bestandteil des kommenden SAP Solution Manager Releases 4.0. Um die neue Funktionalität den Kunden schnellstmöglich zur Verfügung zu stellen, wird sie bereits jetzt mit SAP NetWeaver’04 vorausgeliefert (ab NW04 SP11). Allerdings basiert SAP Solution Manager 3.2 auf einem anderen Release des SAP Web Application Server als SAP NetWeaver’04. Daher sind temporär zwei Systeme notwendig, die jedoch auf einer physischen Hardware installiert werden können. SAP bietet mit dem Solution-Manager-Starter-Pack einen begleitenden Service zur Installation und zum Wissenstransfer an.

Weitere Informationen

Cay Rademann

Tags: , ,

Leave a Reply