Commit fadadd0f authored by Taylor Otwell's avatar Taylor Otwell

allow events to override the log class.

parent 157f619e
...@@ -10,7 +10,7 @@ class Log { ...@@ -10,7 +10,7 @@ class Log {
*/ */
public static function exception($e) public static function exception($e)
{ {
static::write('error', static::format($e)); static::write('error', static::exception_line($e));
} }
/** /**
...@@ -19,7 +19,7 @@ class Log { ...@@ -19,7 +19,7 @@ class Log {
* @param Exception $e * @param Exception $e
* @return string * @return string
*/ */
protected static function format($e) protected static function exception_line($e)
{ {
return $e->getMessage().' in '.$e->getFile().' on line '.$e->getLine(); return $e->getMessage().' in '.$e->getFile().' on line '.$e->getLine();
} }
...@@ -41,10 +41,35 @@ class Log { ...@@ -41,10 +41,35 @@ class Log {
*/ */
public static function write($type, $message) public static function write($type, $message)
{ {
$message = date('Y-m-d H:i:s').' '.Str::upper($type)." - {$message}".PHP_EOL; // If there is a listener for the log event, we'll delegate the logging
// to the event and not write to the log files. This allows for quick
// swapping of log implementations for debugging.
if (Event::listeners('laravel.log'))
{
Event::fire('laravel.log', array($type, $message));
}
// If there aren't listeners on the log event, we'll just write to the
// log files using the default conventions, writing one log file per
// day so they files don't get too crowded.
else
{
$message = static::format($type, $message);
File::append(path('storage').'logs/'.date('Y-m-d').'.log', $message); File::append(path('storage').'logs/'.date('Y-m-d').'.log', $message);
} }
}
/**
* Format a log message for logging.
*
* @param string $type
* @param
*/
protected static function format($type, $message)
{
return date('Y-m-d H:i:s').' '.Str::upper($type)." - {$message}".PHP_EOL;
}
/** /**
* Dynamically write a log message. * Dynamically write a log message.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment