An Firebug schreiben
Zend_Log_Writer_Firebug sendet Logdaten an die
Firebug
Console.
Alle Daten werden über die Zend_Wildfire_Channel_HttpHeaders
Komponente gesendet welche HTTP Header verwendet um sicherzustellen das
der Seiteninhalt nicht verändert wird. Das Debuggen von AJAX Anfragen die
klare JSON und XML Antworten benötigen ist mit diesem
Vorgehen möglich.
Notwendigkeiten:
Ein Firefox Browser idealerweise Version 3 aber auch Version 2 wird unterstützt.
Die Firebug Firefox Erweiterung welche unter https://addons.mozilla.org/en-US/firefox/addon/1843
heruntergeladen werden kann.
Die FirePHP Filefox Erweiterung welche unter https://addons.mozilla.org/en-US/firefox/addon/6149
heruntergeladen werden kann.
Loggen mit Zend_Controller_Front
log('Das ist eine Lognachricht!', Zend_Log::INFO);
]]>
Loggen ohne Zend_Controller_Front
setRequest($request);
$channel->setResponse($response);
// Ausgabe buffering starten
ob_start();
// Jetzt können Aufrufe an den Logger durchgeführt werden
$logger->log('Das ist eine Lognachricht!', Zend_Log::INFO);
// Logdaten an den Browser senden
$channel->flush();
$response->sendHeaders();
]]>
Setzen von Stilen für Prioritäten
Eingebaute und Benutzerdefinierte Prioritäten können mit der
setPriorityStyle() Methode angepasst werden.
addPriority('FOO', 8);
$writer->setPriorityStyle(8, 'TRACE');
$logger->foo('Foo Nachricht');
]]>
Der Standardstil für Benutzerdefinierte Prioritäten kann mit der
setDefaultPriorityStyle() Methode gesetzt werden.
setDefaultPriorityStyle('TRACE');
]]>
Die unterstützten Stile sind wie folgt:
Firebug Logging Stile
Stil
Beschreibung
LOG
Zeigt eine reine Lognachricht an
INFO
Zeigt eine Info Lognachricht an
WARN
Zeigt eine Warnungs Lognachricht an
ERROR
Zeigt eine Fehler Lognachricht an die den Fehlerzählen von Firebug
erhöht
TRACE
Zeigt eine Lognachricht mit einem erweiterbaren Stack Trace an
EXCEPTION
Zeigt eine lange Fehlernachicht mit erweiterbarem Stack Trace an
TABLE
Zeigt eine Lognachricht mit erweiterbarer Tabelle an
Daten für das Loggen vorbereiten
Wärend jede PHP Variable mit den eingebauten Prioritäten geloggt
werden kann, ist eine etwas spezielle Formatierung notwendig wenn einige der
spezialisierteren Logstile verwendet werden.
Die LOG, INFO, WARN,
ERROR und TRACE Stile benötigen keine
spezielle Formatierung.
Loggen von Ausnahmen
Um eine Zend_Exception zu loggen muß einfach das Exceptionobjekt an
den Logger übergeben werden. Es ist egal welche Priorität oder welcher Stil gesetzt wurde,
da die Ausnahme automatisch erkannt wird.
err($exception);
]]>
Tabellen loggen
Man kann auch Daten loggen und diese in einem Table Stil formatieren. Spalten werden
automatisch erkannt und die erste Zeile der Daten wird automatisch der Header.
setPriorityStyle(8, 'TABLE');
$logger->addPriority('TABLE', 8);
$table = array('Summary line for the table',
array(
array('Spalte 1', 'Spalte 2'),
array('Zeile 1 c 1','Zeile 1 c 2'),
array('Zeile 2 c 1',' Zeile 2 c 2')
)
);
$logger->table($table);
]]>