InspectIT

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 14. Juni 2016 um 10:34 Uhr durch Hegerchr (Diskussion | Beiträge) (Aktuelle Version aktualisiert.). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Zur Navigation springen Zur Suche springen
inspectIT

inspectIT-Logo
Basisdaten

Entwickler Open Source - pushed by NovaTec Consulting GmbH
Aktuelle Version 1.6.8.82 [1]
(10. Juni 2016)
Betriebssystem plattformunabhängig
Programmiersprache Java
Kategorie APM Werkzeug
Lizenz Open Source [2]
deutschsprachig nein
Website

inspectIT ist ein Open Source Application Performance Management (APM) Werkzeug, welches eine Diagnose von Java-basierten Anwendungen zur Laufzeit ermöglicht. inspectIT wird von der Competence Area „Application Performance Management“ der Stuttgarter IT-Consultingfirma NovaTec Consulting GmbH entwickelt.

Funktionalität

inspectIT verfolgt einen „benutzertransaktionsfokussierten Ansatz“. Das Hauptaugenmerk wird auf die Analyse von konkreten Benutzeranfragen gelegt. Für jede Anfrage an das überwachte System erstellt inspectIT einen detaillierten Aufrufsbaum, eine sogenannte invocation sequence. Diese invocation sequence enthält für jeden Aufruf einer instrumentierten Methode die konkreten Laufzeiten. Dadurch lässt sich der Benutzerrequest bis zum Auslöser des potentiellen Performanceproblems nachvollziehen. Durch die automatische und transparente Integration von Anfragen an die Datenbank können auch Probleme in der Datenbankzugriffslogik erkannt und verbessert werden.

Aufbau

inspectIT besteht aus drei Komponenten:

  • Der inspectIT Agent integriert sich in das zu überwachende System, sammelt die Diagnoseinformationen der integrierten Messpunkte und sendet diese an den zentralen inspectIT Server. Der Agent ist hierbei so konzipiert, dass der Overhead in Bezug auf CPU-Zeit und Memoryverbrauch möglichst gering ausfällt.
  • Der inspectIT Server, der sogenannte CMR (Centralized Measurement Repository), erhält von den verbundenen Agenten die Diagnoseinformationen und bereitet diese für die Analyse im inspectIT User Interface auf.
  • Das inspectIT User Interface basiert auf der Eclipse RCP und ermöglicht dem Anwender die detaillierte Analyse.

Funktionsweise

Während des Java Classloading der JVM wird ein Java-basierter Agent[3] [4] in den Classloading-Prozess integriert, welcher den Java Bytecode der geladenen Klasse erweitern kann. Anders als Profiler integriert inspectIT Messungen nur an ausgewählten Stellen, so dass der Overhead der Messung gering bleibt. Dieser Ansatz ermöglicht es, Messpunkte transparent in die Anwendung zu integrieren, ohne dass eine Anpassung des Source Codes notwendig ist.

Entwicklung und Namensgebung

Die Entwicklung von inspectIT begann in der NovaTec GmbH im Jahre 2005, damals noch unter dem Namen NovaSpy. Die erste offizielle Version 1.0 wurde im März 2010 veröffentlicht. Seitdem werden regelmäßig neue Versionen veröffentlicht

Open Source

Am 14. August 2015 wurde inspectIT offiziell Open Source gestellt.

Weblinks

Einzelnachweise

  1. http://github.com/inspectIT/inspectIT/releases
  2. https://github.com/inspectIT/inspectIT/blob/master/LICENSE.txt
  3. java.lang.instrument JDK5 Oracle Beschreibung der Verwendung des javaagent für Java 5.
  4. java.lang.instrument JDK6 Oracle Beschreibung der Verwendung des javaagent für Java 6.