8.4. Debugsessions

8.4.1. Steuerung
8.4.2. Backtrace
8.4.3. Variablen
8.4.4. Protokoll
8.4.5. Remote Debugging

Wenn Sie bereits Debugger in anderen Programmierumgebungen genutzt haben, werden Sie dort explizit das Programm in einer Debugsession gestartet haben. Mit dem Beenden des Programmes würde auch die Debugsession beendet und man kann wieder im Editieren.

Der Weaverslave nutzt ein etwas anderes Konzept. Um eine Debugsession zu starten, rufen Sie die Seite wie gewohnt im Browser auf. Bei Xdebug 2 müssen Sie derzeit den Parameter XDEBUG_SESSION_START=default an die URL anhängen. Xdebug setzt daraufhin einen Cookie im Browser, welches für eine Stunde gültig ist.

Xdebug verbindet daraufhin zum Weaverslave, erhält die Breakpoints und die Bestätigung zum Starten des Scriptes. Beim ersten Breakpoint oder im Fehlerfall stopp Xdebug das Script und meldet die aktuelle Position an den Editor. Dieser erfragt dann den Backtrace und die aktuellen Variablen.

Es können mehrere Debugsessions gleichzeitig aktiv sein. Sie können dann im Weaverslave über den ersten Button von Links die Debugsession auswählen, welche Sie kontrollieren möchten.

Diese strikte Trennung ermöglicht eine deutliche höhere Flexibilität beim debuggen. Framesets und komplexe Formulare mit Javascript sind kein Problem, da die Ausgabe wie gewohnt im Browser angezeigt wird. Für den Weaverslave ist es egal, ob Sie eine Webapplikation, ein Shellscript oder eine PHP-GTK-Anwendung debuggen.