Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Geleitwort des Fachgutachters
Vorwort
1 Einleitung
2 Einführung in eZ Components
3 Die Applikationsbasis
4 Fehlerbehandlung und Debugging
5 Konfiguration
6 Datenbankanbindung
7 ORM mit PersistentObject
8 Template
9 Übersetzung
10 Benutzereingaben validieren
11 Authentifizierung
12 Bildverarbeitung
13 Archive und Dateien
14 Mail
15 Logging
16 Diagramme
17 Feeds und Caching
18 Setup
A Inhalt der Buch-CD
Stichwort
Download: - ZIP, ca. 2,7 MB
Ihre Meinung?
<< zurück | Galileo Computing / <openbook> /eZ Components | vor >>
eZ Components von Tobias Schlitt, Kore Nordmann Das Entwickler-Handbuch
eZ Components geb., mit CD 454 S., 39,90 Euro Galileo Computing ISBN 978-3-8362-1073-7 |
| 4 Fehlerbehandlung und Debugging
|  | 4.1 Verwendete Komponenten
|  |  | 4.1.1 Execution
|  |  | 4.1.2 Debug
|  | 4.2 Fehlerbehandlung
|  |  | 4.2.1 Ausgaben puffern
|  |  | 4.2.2 Die Fehler-Aktion
|  |  | 4.2.3 Fatale Fehler
|  | 4.3 Debugging
|  |  | 4.3.1 Debug-Ausgaben
|  |  | 4.3.2 Fehlerinformationen
|  |  | 4.3.3 Timing-Informationen
|  |  | 4.3.4 Debug-Ausgabe
|  | 4.4 Fazit
Fehlerbehandlung und Debugging sind wesentliche Themen jedes Software-Projekts und sollten keinesfalls zu kurz kommen. Mit Execution und Debug stellen eZ Components passende Komponenten bereit, die sich dieser Themen annehmen. # 4 Fehlerbehandlung und Debugging Fehler jeglicher Art in einer Anwendung sind für den Benutzer immer eine unangenehme Sache. Besonders störend ist die Darstellung von Fehlern auf einer Webseite, die den Benutzer entweder in eine Sackgasse führen oder gar das Seiten-Layout und die dargestellten Daten stören. In diesem Kapitel werden die Verarbeitung des in Kapitel 3, »Die Applikationsbasis«, bereits verwendeten Fehlersignals implementiert und Fehler dabei in eine benutzerfreundliche Meldung umgewandelt. Weiterhin werden fatale Fehler abgefangen und vor dem Benutzer versteckt. Zwar ist das Verstecken von Fehlern benutzerfreundlich, bei der Wartung und Weiterentwicklung einer Applikation aber eher störend. Daher werden außerdem in diesem Kapitel Debugging-Funktionalitäten in das Galileo-Press-Blog eingefügt, die zur Entwicklungszeit Aufschluss über aufgetretene Fehler geben und das Profiling einzelner Applikationsteile erlauben.
Debugging und Profiling
Der hier gezeigte Ansatz von Debugging ist nicht wirklich optimal. Zwar werden beim Einschalten der Debug-Option Fehlermeldungen protokolliert und Events dargestellt, einen echten Debugger ersetzt diese Methodik aber nicht. Insbesondere geht im GP-Blog der Stack-Trace eines Fehlers verloren, der sonst wesentliche Informationen zur Fehlersuche beiträgt. Eine bessere Realisierung ist aber aus Platz- und Anschauungsgründen hier nicht möglich. In realen Anwendungen empfehlen wir Ihnen, neben der Debug-Komponente den PHP-Debugger Xdebug einzusetzen, welcher bereits in Abschnitt 2.5.2, »Patches bereitstellen und Dokumentation verbessern«, erwähnt wurde. Unter Profiling versteht man die Analyse der Laufzeit einzelner Applikationsteile. So ist es möglich, Flaschenhälse einer Applikation zu identifizieren und gegebenenfalls zu beseitigen. Die Debug-Komponente unterstützt Sie auch bei diesem Verfahren der Applikationsanalyse. Allerdings bietet Xdebug auch hier fortgeschrittene Funktionalitäten, sodass Sie wiederum eine Kombination beider Techniken verwenden sollten.
## 4.1 Verwendete Komponenten Die Execution-Komponente kümmert sich um fatale Fehler in der Anwendung. Bei einigen Webapplikationen erkennt man solche Fehler an einer hässlichen PHP-Fehlermeldung im Browser, die statt der gewünschten Applikation dargestellt wird, oder auch an komplett weißen Seiten, wenn die Anzeige von Fehlern sinnvollerweise unterdrückt wird. Die Execution-Komponente geht diese Problematik auf globaler Ebene an und erlaubt Ihnen, stattdessen eine ansprechende Fehlermeldung zu präsentieren. Mit Hilfe der Debug-Komponente ist es möglich, auch bei abgefangenen Fehlern zur Entwicklungszeit Einblick in die auftretenden Fehler zu erhalten. Außerdem stellt sie Funktionalitäten bereit, Ausführungszeiten innerhalb der Applikation zu messen und so Flaschenhälse zu identifizieren. Zu beiden Techniken erfahren Sie mehr im entsprechenden Kasten. ### 4.1.1 Execution Auch bei exzessivem Testen einer Applikation sind fatale Fehler nicht völlig auszuschließen. Um vorzubeugen, dass der Benutzer des GP-Blogs unschöne Darstellungen solcher Fehler zu Gesicht bekommt, erlaubt die Execution-Komponente, diese abzufangen und entsprechend darauf zu reagieren. So können Sie dem Benutzer eine ansprechende Fehlerseite präsentieren und gegebenenfalls einen Administrator benachrichtigen, sobald ein fataler Fehler auftritt. Dieses Kapitel beschränkt sich lediglich auf die Darstellung gegenüber dem Benutzer; die Benachrichtigungsfunktionen werden später in Kapitel 14, »Logging«, nachgerüstet. ### 4.1.2 Debug Das Verstecken von Fehlern gegenüber dem Benutzer erhöht dessen Komfort beim Verwenden der Applikation und senkt das Risiko, sicherheitsrelevante Daten unbeabsichtigt nach außen dringen zu lassen. Ihnen sind sie allerdings oft ein arges Hindernis beim Debugging der Anwendung. Aus diesem Grund werden mit Hilfe der Debug-Komponente Logging-Funktionen für Fehler in das GP-Blog eingefügt. Mittels eines einfachen Schalters können Sie der Applikation detaillierte Informationen über aufgetretene Fehler entlocken. ### Ihr Kommentar Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
<< zurück | <top> | vor >>
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Buchempfehlungen
| PHP 5.3 und MySQL 5.1
| Besser PHP programmieren
| Webshops mit Magento
| Sichere Webanwendungen
| PHP 5.3 und MySQL 5.1 - Videotraining
| Apache 2
| Suchmaschinen- Optimierung für Webentwickler
| Joomla! 1.5
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

[Galileo Computing]
Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de