Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

eZDebug und Protokollierung

Aus einer Erweiterung in die Debug-Ausgabe und in Logdateien schreiben - writeNotice, writeWarning, writeError, writeDebug, Zeitmessung und Akkumulatoren, eZLog::write - und die Debug-Einstellungen.

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/extension-development/part-8-reference/ezdebug-and-logging.md

On this page

This page is a translation. Read the English original

eZDebug und Protokollierung

Teil 8, Referenz 3. eZDebug (lib/ezutils/classes/ezdebug.php) sammelt Meldungen für die Debug-Ausgabe und schreibt sie in Logdateien; eZLog (lib/ezfile/classes/ezlog.php) schreibt Zeilen in eine Logdatei Ihrer Wahl. Wie Sie die Ausgabe lesen, steht in Debug-Ausgabe und Logs für Entwickler und Erweiterungen debuggen.

Meldungen

Alle sind statisch und nehmen die Meldung, eine Bezeichnung (meist __METHOD__) und optional eine CSS-Klasse für die Debug-Ausgabe entgegen:

MethodeStufeLogdatei (unter var/log/ oder im Log-Verzeichnis der Website)
eZDebug::writeNotice( $string, $label = "", $backgroundClass = "" )Hinweisnotice.log
eZDebug::writeWarning( $string, $label = "", $backgroundClass = "" )Warnungwarning.log
eZDebug::writeError( $string, $label = "", $backgroundClass = "" )Fehlererror.log
eZDebug::writeDebug( $string, $label = "", $backgroundClass = "" )Debugdebug.log
eZDebug::writeStrict( $string, $label = "", $backgroundClass = "" )strictstrict.log

$string darf ein Array oder Objekt sein; es wird lesbar ausgegeben.

<?php
eZDebug::writeNotice( 'Imported 12 items', __METHOD__ );
eZDebug::writeWarning( "Setting [ListSettings] Limit missing, using 10", __METHOD__ );
eZDebug::writeError( "Item $id not found", __METHOD__ );

Welche Stufen in den Logdateien landen, legt site.ini [DebugSettings] fest: AlwaysLog[] listet die Stufen auf, die auch bei ausgeschalteter Debug-Ausgabe geschrieben werden (standardmäßig error).

Zeitmessung

<?php
eZDebug::accumulatorStart( 'myext_import', 'myext', 'Import' );
// ... the work ...
eZDebug::accumulatorStop( 'myext_import' );

eZDebug::addTimingPoint( 'myext: before rendering' );
MethodeZeigt
accumulatorStart( $key, $inGroup = false, $name = false, $recursive = false ) und accumulatorStop( $key, $recursive = false )die zwischen Start und Stopp verbrachte Gesamtzeit, über alle Aufrufe summiert, in den Zeitakkumulatoren der Debug-Ausgabe
addTimingPoint( $description = "" )einen Punkt in der Zeittabelle mit Zeit und Speicher

Ist die Debug-Ausgabe eingeschaltet?

eZDebug::isDebugEnabled() gibt zurück, ob für diesen Request Debug-Ausgabe gesammelt wird. Verwenden Sie es, um aufwendige Vorbereitungen von Debug-Meldungen zu überspringen.

Ihre eigene Logdatei

<?php
eZLog::write( "Order $orderID sent to the warehouse", 'myext.log' );

eZLog::write( $message, $logName = 'common.log', $dir = 'var/log' ) hängt eine Zeile mit Datum an. Übergeben Sie das Log-Verzeichnis der Website, wenn Ihre Installation eines verwendet (eZSys::varDirectory() . '/log'). Schreiben Sie nie Passwörter, Tokens oder personenbezogene Daten in Logs.

Die Einstellungen

site.ini [DebugSettings]:

EinstellungWirkung
DebugOutputenabled zeigt die Debug-Ausgabe an
DebugByIP, DebugIPList[]sie nur den aufgeführten Adressen anzeigen
DebugByUser, DebugUserIDList[]sie nur den aufgeführten Benutzer-IDs anzeigen
AlwaysLog[]Stufen, die unabhängig von den obigen Einstellungen in Logdateien geschrieben werden

Schalten Sie die Debug-Ausgabe nur auf Entwicklungskopien oder für Ihre eigene Adresse ein.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x