ptraced - der ProAKT Trace Analyser
ProAKT Trace Files sind bekannt dafür, dass sie neuen Mitgliedern im Team schwer verständlich erscheinen. Das ist nicht anders zu erwarten: die Trace Files sind für 3rd Level Support bestimmt und enthalten die Informationen, die Programmierer für die Analyse von schwierigen (oder historisch bekannten) Problemsituationen benötigen. Die Mitglieder des ProAKT Entwicklungsteams nutzen sie, um Situationen einzugrenzen, die ohne tiefere Kenntnis des Produkts oft unverständlich erscheinen müssen. Für 1st und 2nd Level Support stehen hingegen andere Informationsquellen bereit: das ProAKT Systemjournal bzw. Transaktionsjournal.
Aber manchmal besteht doch die Notwendigkeit, in einen ProAKT Trace zu schauen. Manchmal möchte 2nd Level support ein tieferes Verständnis für die Zusammenhänge gewinnen, die bei Problemsituationen auftreten. Vor ptraced war das einzige mögliche Tool zur Auswertung ein Texteditor - was nicht wirklich weiterhilft.
Deshalb haben wir dieses Tool geschrieben, das im Kern ein Scintilla-basierter Text Editor ist, der zusätzlich noch ein paar Funktionen zur Analyse von ProAKT Traces enthält.
Download und Installation
Sie können den Setup hier herunterladen here. Starten Sie den Installer und lassen Sie sich durch ein einfaches Installationsmenü führen, das selbsterklärend sein sollte.
Benutzung
Hintergrund: Wie sind ProAKT Tracefiles aufgebaut?
ProAKT Trace Dateien sind einfache Textdateien mit mehr oder minder beliebigem Inhalt, der nur einer minimalen Strukturvorgabe folgt: Jeder Eintrag in der Datei besteht aus einem Header, und einem Body. Beispiel:
[27.04.2016 11:38.19,108 13272 12200 INFO PASERVER.EXE] MainEventLoop() got signaled
-
Der Header ist alles in eckigen Klammern. In unserem Beispiel:
[27.04.2016 11:38.19,108 13272 12200 INFO PASERVER.EXE]
Das Layout des Headers folgt normalerweise diesem Aufbau:
[DD.MM.YYYY HH:MM.SS,MMM THREADID PROCESSID LEVEL COMPONENT] In unserem Beispiel ist der COMPONENT PASERVER.EXE und der LEVEL INFO -
Der Body ist der ganze folgende Text - bis zum nächsten Header. In unserem Beispiel ist dies:
MainEventLoop() got signaled
Wie Tracedateien in ptraced angezeigt werden
Wenn man eine Tracedatei in ptraced öffnet, sieht man etwas wie das folgende:
Auf der rechten Seite ist ein Editor mit der eigentlichen Tracedatei
- Header sind blau hervorgehoben, der Body ist normalerweise Schwarz. Wenn der Block den LEVEL ERROR hat, wird er rot hervorgehoben.
- Zeilennummern sind am rechten Rand zur Orientierung eingeblendet.
- Bookmarks können an wichtigen Textstellen manuell gesetzt werden (im Bild gibt es einen bei Zeile 18403).
Einträge filtern
Auf der linken Seite sind die ProAKT-spezifischen Auswertungstools
- Bei Module sehen Sie eine Liste aller im Tracefile verwendeten Module. Die %-Spalte gibt an, wie viel Inhalt der Tracedatei einer Komponente zugeordnet sind.
- Bei Level sehen Sie eine Liste aller verwendeten LEVEL
- Bei Thread sehen Sie eine Liste aller verwendeten THREADIDs
- Bei Process sehen Sie eine Liste aller verwendeten PROCESSIDs
Im obigen Beispiel sehen Sie, dass es eine Komponente CDMDUMMY (der simulierte Kartenleser) gibt. Angenommen, Sie wollen nur Einträge für dieses Gerät sehen, dann klicken Sie alle anderen Module ab und nur dieses an.
Smart Bookmarks
Auf der rechten Seite sehen Sie auch ein weiteres Fenster "Smart Bookmarks". Wenn ptraced eine Tracedatei einliest, versucht es besonderes wichtige Einträge herauszufinden und so bereitzustellen, dass man leicht zwischen ihnen navigieren kann - in unserem Beispiel sind das PASERVER Events und Transaktionen. Das Fenster kann mit F7 bzw. dem Menü View/Smart Bookmarks aktiviert / deaktiviert werden.
Weitere Funktionalitäten
- Wie oben gesagt ist ptraced im Kern ein Texteditor. Das bedeutet, Sie können das tun, was sie von einem Texteditor erwarten: Text editieren, suchen (Strg+F) und navigieren (Strg+G).
- Tracedateien können auch über Drag & Drop ins Hauptfenster geladen werden.
- Die Schriftartgröße kann über Strg+Mousewheel geändert werden
Lizenz und Support
ptraced wird unter der vereinfachten BSD-Lizenz veröffentlicht. Eine deutsche übersetzung finden Sie auf der Wikipedia-Seite zur BSD-Lizenz.
Effektiv bedeutet dies, dass ptraced kostenlos zur Verfügung gestellt wird, aber kein Support geleistet wird. Wenn Sie Anforderungen an Support und/oder neue Funktionalitäten haben, wenden Sie sich bitte an unser Vertriebsteam.
Versionshistorie
- Version 0.5.0 - am 1. Mai 2016 wurde die erste öffentliche Version von ptraced auf dieser Seite zur Verfügung gestellt.