In diesem Tutorial werde ich Ihnen zeigen, wie Sie Prozesse mit dem Xpert.ivy Designer Debuggen können.
Die Simulation
Das einfachste und zugleich eines der effektivsten Werkzeuge ist die Simulation.
Auf Abbildung 1 sehen Sie wie Sie die Simulation ein- bzw. ausschalten können und wie Sie die Geschwindigkeit anpassen können.
![]() |
Abb. 1: Simulationseinstellungen |
In den Preferences (Window -> Preferences) finden Sie unter Xpert.ivy -> Engine weitere Einstellungen die die Simulation beeinflussen.
![]() |
Abb. 2: Weitere Simulationseinstellungen |
Punkt 1 lässt Sie kontrollieren, ob und wann die Simulation den Prozessfluss simuliert. Mit Punkt 2 können Sie Start Event Beans und Intermediate Event Beans ausführen lassen bzw. unterdrücken. Dies kann praktisch sein, wenn Sie diese Events nicht benötigen.
Die History View
Das nächste Werkzeug ist die History View. Die History View speichert einen Snapshot der Prozessdaten auf jedem Prozesselement zum Zeitpunkt als der Prozess das Element durchlief.
Wenn Sie die Engine starten und einen Prozess ausführen, klicken Sie auf das Prozesselement das Sie interessiert. In der History View sehen Sie dann alle Prozessdaten die zum Zeitpunkt, als das Prozesselement durchlaufen wurde, aktuell waren.
Wenn Sie die Engine starten und einen Prozess ausführen, klicken Sie auf das Prozesselement das Sie interessiert. In der History View sehen Sie dann alle Prozessdaten die zum Zeitpunkt, als das Prozesselement durchlaufen wurde, aktuell waren.
![]() |
Abb. 3: History View |
Breakpoints
Mit Breakpoints können Sie stellen in Ihrem Prozess markieren, an denen die Engine anhalten soll. Wenn die Engine einen Breakpoint erreicht hat, können Sie die Variablen untersuchen.
Um einen Breakpoint auf einem Prozesselement zu setzen, klicken Sie mit der rechten Maustaste auf das Prozesselement und wählen Breakpoint -> Add Breakpoint. Auf dem Prozesselement ist nun eine kleine blaue Kugel zu sehen.
Starten Sie die Engine und einen Prozess. Sobald der Prozess das Prozesselement erreicht, stopp die Prozessausführung.
![]() |
Abb. 4: Prozessausführung stoppt bei Breakpoint |
Auf Abbildung 4 sehen Sie wie der Prozess auf ein Prozesselement mit einem Breakpoint gelaufen ist und angehalten hat. Dies erkennt man an dem blauen Pfeil links neben dem Prozesselement. In der Variables View sehen Sie welche Werte die Variablen zu diesem Zeitpunkt haben.
Nun haben Sie 2 Möglichkeiten. Sie können mit F8 zum nächsten Breakpoint springen, oder per F6 durch jedes nachfolgende Prozesselement steppen.
Conditional Breakpoints
Neben den normalen Breakpoints gibt es auch die so genannten Conditional Breakpoints. Diese stoppen die Ausführung des Prozesses nur, wenn eine gewisse Bedingung erfüllt ist. Beispielsweise wenn ein Zähler einen gewissen Wert erreicht hat.
Um einen Conditional Breakpoint zu erstellen, klicken Sie mit der rechten Maustaste auf das Prozesselement und wählen Breakpoint -> Conditional Breakpoint. Ein Fenster wie in Abbildung 5 geht auf, dass Sie auffordert eine Bedingung einzugeben.
![]() |
Abb. 5: Bedingung des Conditional Breakpoint eingeben |
Breakpoints auf Datenklassen
Die letzte Art von Breakpoint ist der Breakpoint auf einem Datenklassen-Attribut. Öffnen Sie dazu eine Datenklasse und wählen Sie das Attribut aus, auf welchem Sie den Breakpoint setzen wollen.
![]() |
Abb. 6: Breakpoint auf Datenklassen-Attribut setzen |
Beachten Sie den kleinen Bleistift der nun auf dem roten A-Symbol des Attributes zu sehen ist. Dieses weist darauf hin, dass auf diesem Attribut ein Breakpoint ist.
Wenn sich dieses Attribut ändert, wird die Prozessausführung gestoppt. In der Variables View sehen Sie unter dem Eintrag debug den alten und neuen Wert des Attributes.
Breakpoints deaktivieren
Sie können in der Breakpoints View die Breakpoints ein- und ausschalten oder ganz löschen.
![]() |
Abb. 7: Breakpoints View |
Debug Log Statements
Die letzte Technik die ich Ihnen zeigen werde ist das ausgeben von Log Statements. Dazu müssen Sie nur folgenden Code in einem Script-Step ausführen.
Code Snippet 1: Debug Log Statement
Dieses Log Statement wird beim durchlaufen des Script-Step im Runtime Log angezeigt. Sie müssen dazu den Log Level auf Debug einstellen und Filter user logs aktivieren.
Per Doppelklick auf einen Log Eintrag, öffnet sich ein Fenster mit Details.
Von hier aus können Sie, wie in Abbildung 9 gezeigt wird, direkt auf das Prozesselement springen, welches das Log ausgegeben hat. Dies funktioniert auch für Errors.
Dieses Log Statement wird beim durchlaufen des Script-Step im Runtime Log angezeigt. Sie müssen dazu den Log Level auf Debug einstellen und Filter user logs aktivieren.
![]() |
Abb. 8: Das Runtime Log |
![]() |
Abb. 9: Log Details |
Über den Author: Heinrich Spreiter ist der Gründer von xpertivyhacker.ch. Kontaktieren Sie ihn auf Xing und Twitter
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.