Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
de:services:server_services:webhosting:logfiles [2016/10/14 13:54] – [Hinweis, Warnungen und fatale Fehler] rlossinde:services:server_services:webhosting:logfiles [2016/10/14 13:54] (aktuell) – [Hinweis, Warnungen und fatale Fehler] rlossin
Zeile 1: Zeile 1:
 +====== Fehleranalyse mit Hilfe von Logfiles ======
 +
 +===== Allgemeines =====
 +
 +Auftretende Fehler im Betrieb eines Webauftrittes werden in sogenannten 'Logfiles dokumentiert. Diese sind im Verzeichnis ''logs'' nach dem Muster ''<vweb-name>.error.log'' gespeichert. 
 +
 +===== Fehlertypen =====
 +
 +Die Einträge können bei der Analyse eines Fehlverhaltens der installierten Webanwendung helfen; so werden Syntax-Fehler für Scriptsprachen (PHP, Perl) aber auch fehlerhafte Zugriffe (Verweis auf Dateien, die nicht existieren oder in einem fremden Dokumentenstammverzeichnis abgelegt sind) protokolliert.
 +
 +Die Einträge werden stets mit einem Zeitstempel (entspricht der Serverzeit) versehen. Auch wird die Art des Fehlers sowie eine kurze Zusammenfassung angegeben.
 +
 +===== Hinweis, Warnungen und fatale Fehler =====
 +
 +Gerade bei der Verwendung einer serverseitig ausgeführten Scriptsprache wie PHP sind die Hinweise in der Regel sehr präzise; so wird die Wichtigkeit eines Fehlers mit den Schlagworten ''Notice'', ''Warning'' oder ''Fatal Error'' signalisiert.
 +
 +Während ein Hinweis die Ausführung der Anwendung nicht unterbricht, so wird die Ausführung eines Scriptes bei fatalen Fehlern unterbunden. Hinweise beziehen sich beispielsweise auf undefinierte Indizes in Arrays. Das Script ist in einem solchen Falle in der Regel weiter lauffähig, allerdings wird bei einer Nutzung eines undefinierten Indexes  ''NULL'' angenommen, was die Ausführung des Scriptes an einer späteren Stelle durchaus weiter beeinträchtigen kann. 
 +
 +**Beispiel:**
 +
 +<code>
 +$testarray = [
 +    "eins" => "Wert eins",
 +    "zwei" => "Wert zwei",
 +];
 +
 +echo $testarray['drei'];
 +</code>
 +
 +Dieses Beispiel würde einen Hinweis erzeugen, da der Key ''drei'' nicht definiert ist. 
 +
 +Eine Warnung bezieht sich auf logische Fehler, die Teile des Scriptablaufs beeinträchtigen. Häufige Gründe für eine Warnung sind beispielsweise fehlende Argumente bei einem Funktionsaufruf.
 +
 +So wird die nachfolgende beispielhafte foreach-Schleife 
 +
 +**Beispiel:**
 +
 +<code>
 +//$aepfel = array('Braeburn', 'Decio', 'Gala', 'Golden Delicious');
 +
 +foreach($aepfel as $apfel) {
 +     echo $apfel;
 +}
 +
 +</code>
 +
 +eine Fehlermeldung nach dem Muster 
 +
 +<code>
 +[Wochentag Monat Tag Zeit Jahr] [:error] [pid xxxxx] [client xxx.xxx.xxx.xxx:xxxxx] PHP Warning:  Invalid argument supplied for foreach() in /web/<nutzerkennung>/www/<vweb-name>/<dateiname> on line xx, referer: <Verweis>
 +</code>
 +
 +ausgeben, da das Array ''$aepfel'' auskommentiert wurde und somit nicht existiert.
 +