2012-04-04 8 views
0

Ich arbeite mit einer Site auf kohana 3 aufbauen, eigentlich fange ich an, kohana zu verwenden. Ich möchte eine einfache Protokollierung für Fehler verwenden. Ich bekomme Fehler in Protokollen dir aus dem App-Pfad auf verschiedene Dinge und ich versuche, einen meiner eigenen hinzuzufügen und in einen Fehler zu geraten.Kohana Log - Fehler schreiben

ich tun, wie folgt:

Kohana::$log->add('error', 'Could not locate user'); 
Kohana::$log->write(); 

Nach der letzten Zeile ich in diese Fehlermeldung erhalten:

ErrorException [ Notice ]: Undefined index: error 

SYSPATH\classes\kohana\log\file.php [ 91 ] 

86 
87  foreach ($messages as $message) 
88  { 
89   // Write each message into the log file 
90   // Format: time --- level: body 
91   file_put_contents($filename, PHP_EOL.$message['time'].' --- '.$this->_log_levels[$message['level']].': '.$message['body'], FILE_APPEND); 
92  } 
93 } 
94 
95 } // End Kohana_Log_File 
SYSPATH\classes\kohana\log\file.php [ 91 ] » Kohana_Core::error_handler(arguments) 

SYSPATH\classes\kohana\log.php [ 184 ] » Kohana_Log_File->write(arguments) 

APPPATH\classes\controller\main.php [ 23 ] » Kohana_Log->write() 

{PHP internal call} » Controller_Main->action_index() 

SYSPATH\classes\kohana\request\client\internal.php [ 118 ] » ReflectionMethod->invoke(arguments) 

SYSPATH\classes\kohana\request\client.php [ 64 ] » Kohana_Request_Client_Internal->execute_request(arguments) 

SYSPATH\classes\kohana\request.php [ 1138 ] » Kohana_Request_Client->execute(arguments) 

DOCROOT\index.php [ 109 ] » Kohana_Request->execute() 

Was mit diesem ist falsch? Danke

Antwort

4

Verwenden Sie einfach Log-Konstanten für Nachrichtentypen, z.

Kohana::$log->add(Log::ERROR, 'Could not locate user');

weil diese reflektieren Fehlertypen in PHP.

P.S. Sie müssen Log :: write() nicht aufrufen, das geschieht automatisch beim Herunterfahren.