In diesem Artikel wird hauptsächlich die Methode zum Aufzeichnen von Protokollen in benutzerdefinierten Dateien im Yii-Framework vorgestellt. Er analysiert die Prinzipien der Yii-Framework-Protokollierung und die damit verbundenen Konfigurations- und Implementierungsfähigkeiten in Form von Beispielen Folgendes
Das Beispiel in diesem Artikel beschreibt, wie das Yii-Framework die Protokollierung in einer benutzerdefinierten Datei implementiert. Geben Sie es als Referenz an alle weiter. Die Details lauten wie folgt:
Standardmäßig zeichnet Yii::log($msg, $level, $category)
das Protokoll in der Datei runtime/application.log auf.
Das Protokollformat ist wie folgt:
[Zeit] – [Level] – [Kategorie] – [Inhalt]
2013/05/03 17:33:08 [error] [application] test
Aber manchmal braucht man Um einige bestimmte Protokolle abzulegen, legen Sie sie in einer bestimmten Datei ab, z. B. im Protokoll fehlgeschlagener Transaktionen, das getrennt von anderen Protokollen aufgezeichnet werden muss.
Dies kann durch die Konfiguration verschiedener CLogRouter in Yii gelöst werden.
Sie müssen zunächst den Protokollierungsmechanismus von Yii verstehen, der aus zwei Teilen besteht: CLogger und CLogRouter
CLogger ist für die Aufzeichnung von Protokolldaten im Speicher verantwortlich, während CLogRouter entscheidet, wie diese verarbeitet werden Protokolle. Daten, wie z. B. das Aufzeichnen in Dateien oder Datenbanken oder das Versenden von E-Mails usw.
Unter anderem wird CFileLogRoute zum Verarbeiten von Protokolldaten in Form von Dateien verwendet. Daher können Protokolle natürlich in verschiedenen Protokolldateien aufgezeichnet werden, indem unterschiedliche CFileLogRoutes konfiguriert werden.
Die spezifische Konfiguration ist wie folgt:
'log' => array( 'class' => 'CLogRouter', 'routes' => array( array( 'class' => 'CFileLogRoute', 'levels' => 'error, warning', ), array( 'class' => 'CFileLogRoute', 'levels' => 'error, warning', 'categories'=> 'orders.*', 'logFile'=> 'orders.log', ),
Wo Bestellfehler aufgezeichnet werden müssen, fügen Sie den folgenden Code hinzu:
Yii::log('your message', 'error', 'orders');
Das obige ist der detaillierte Inhalt vonDas Yii-Framework implementiert die Methode zum Aufzeichnen von Protokollen in benutzerdefinierten Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!