magento
Logowanie do pliku
Szukaj…
Składnia
- publiczny dziennik funkcji statycznych ($ message, $ level = null, $ file = '', $ forceLog = false)
Parametry
Parametr | Detale |
---|---|
ciąg $ wiadomość | Wiadomość, która zostanie zarejestrowana |
liczba całkowita $ poziom | Poziom dziennika |
plik $ string | Ścieżka i nazwa z rozszerzeniem pliku, który zostanie zapisany w var/log/ . Jeśli NULL lub nie zostanie określony, zostanie użyty system.log . |
bool $ forceLog | Jeśli ustawione na TRUE dziennik zostanie zapisany, nawet jeśli tryb programisty jest wyłączony, a rejestrowanie jest nieaktywne. |
Uwagi
Rejestrowanie jest domyślnie wyłączone, chyba że tryb programisty jest aktywny.
Wszystkie wyjątki są rejestrowane w exceptions.log
bez względu na to, czy rejestrowanie jest włączone w konfiguracji.
Logowanie można włączyć, logując się do Magento Admin i przechodząc do:
- System> Konfiguracja (górny pasek)
- Deweloper (lewe menu)
- Sekcja Ustawienia dziennika
- Wybierz opcję Tak z listy rozwijanej
Enabled
. - Zapisz konfigurację w prawym górnym rogu.
Typ zmiennej wiadomości
Mimo że dokumentacja określa, że komunikat powinien być ciągiem, jeśli zostanie przekazana tablica, w tej metodzie jest blok kodu, który zajmuje się tym za pomocą print_r
:
if (is_array($message) || is_object($message)) {
$message = print_r($message, true);
}
Poziom dziennika
Jeśli parametr poziomu jest ustawiony na zero, wówczas przyjmowany jest poziom DEBUG.
$level = is_null($level) ? Zend_Log::DEBUG : $level;
Poziomy są zadeklarowane w pliku: lib\Zend\log.php
const EMERG = 0; // Emergency: system is unusable
const ALERT = 1; // Alert: action must be taken immediately
const CRIT = 2; // Critical: critical conditions
const ERR = 3; // Error: error conditions
const WARN = 4; // Warning: warning conditions
const NOTICE = 5; // Notice: normal but significant condition
const INFO = 6; // Informational: informational messages
const DEBUG = 7; // Debug: debug messages
Stałe w postaci Zend_Log::INFO
lub liczby całkowitej w podanym powyżej zakresie można przekazać jako parametr na poziomie dziennika.
Niestandardowy plik dziennika
Mage::log('My log entry', null, 'mylogfile.log');
To będzie logować się do
/var/log/mylogfile.log
Domyślne rejestrowanie
Mage::log('My log entry');
Mage::log('My log message: '.$myVariable);
Mage::log($myArray);
Mage::log($myObject);
Spowoduje to zalogowanie do /var/log/system.log
Obiekty i tablice są automatycznie zapisywane za pomocą dyrektywy print_r()
. Uważaj podczas używania obiektów, ponieważ mogą one mieć znaczne rozmiary.
Mage::logException($e);
Spowoduje to zapisanie ciągu śledzenia wyjątku do /var/log/exception.log