Bytecode Instrumentation mit JavaAgent für Logging und Debugging

JavaAgent

Bereits seit Java 5 besteht die Möglichkeit mit der JVM Option -javaagent eigene Klasse in das Klassenladen der VM einzuklinken und so zu verändern bevor diese ausgeführt werden. AspectJ nutzt das z.B. um Aspekte auf Bytecode Ebene "einzuweben".

Logging und Debugging

Ein schönes OpenSource Tool, welches sich diese Möglichkeit ebenfalls zu Nutze macht, ist: LimpidLog

Aber mit Logging ist es nicht genug! Wahrscheinlich hat man bei ACELet gedacht, wenn wir schon die ganzen Informationen fürs Logging aufzeichnen, dann kann man das doch auch ganz gut für’s Debuggen benutzen.

Und so entstand wahrscheinlich LimpidDebugger, der im Gegensatz zu "normalen" Debuggern kein Live-Debugger ist, sondern das Programm auf einem vorher aufgezeichneten Pfad durchläuft. In manchen Situationen sehr nützlich wie ich finde.

Dieser Beitrag wurde unter Java veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *