From 957d5dc83c9107f80d5888001998580b98c2a9f2 Mon Sep 17 00:00:00 2001 From: SmiSoft Date: Fri, 4 Nov 2016 11:40:43 +0300 Subject: [PATCH] >>> system/classes/Kohana/Log.php - shortens path using Debug::path to prevent site owner (viewing logs) from long (sometimes, very long) paths; >>> system/classes/Kohana/Log/Writer.php - unify log filenames for regular logs (from normal application execution) and from exception handling (regular log procedure call generate log in form "message in file.php:123", but excptions generate log in format "message ~ file.php [123]"). I use automatic log's analyzer, so it's quite inconvinient to create different patterns for different log's messages; --- classes/Kohana/Log.php | 2 +- classes/Kohana/Log/Writer.php | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/classes/Kohana/Log.php b/classes/Kohana/Log.php index 07f0434e1..a5e92e23b 100644 --- a/classes/Kohana/Log.php +++ b/classes/Kohana/Log.php @@ -161,7 +161,7 @@ public function add($level, $message, array $values = NULL, array $additional = 'level' => $level, 'body' => $message, 'trace' => $trace, - 'file' => isset($trace[0]['file']) ? $trace[0]['file'] : NULL, + 'file' => isset($trace[0]['file']) ? Debug::path($trace[0]['file']) : NULL, 'line' => isset($trace[0]['line']) ? $trace[0]['line'] : NULL, 'class' => isset($trace[0]['class']) ? $trace[0]['class'] : NULL, 'function' => isset($trace[0]['function']) ? $trace[0]['function'] : NULL, diff --git a/classes/Kohana/Log/Writer.php b/classes/Kohana/Log/Writer.php index c7c967810..541bd1ae2 100644 --- a/classes/Kohana/Log/Writer.php +++ b/classes/Kohana/Log/Writer.php @@ -73,13 +73,15 @@ final public function __toString() * @param string $format * @return string */ - public function format_message(array $message, $format = "time --- level: body in file:line") + public function format_message(array $message, $format = "time --- level: body ~ file [ line ]") { $message['time'] = Date::formatted_time('@'.$message['time'], Log_Writer::$timestamp, Log_Writer::$timezone, TRUE); $message['level'] = $this->_log_levels[$message['level']]; $string = strtr($format, array_filter($message, 'is_scalar')); + if (substr($string,-16)===' ~ file [ line ]') + $string=substr($string,0,-16); if (isset($message['additional']['exception'])) { // Re-use as much as possible, just resetting the body to the trace