diff options
-rw-r--r-- | system/core/Log.php | 15 | ||||
-rw-r--r-- | user_guide_src/source/changelog.rst | 1 |
2 files changed, 15 insertions, 1 deletions
diff --git a/system/core/Log.php b/system/core/Log.php index 7d318ed57..e7a271f4e 100644 --- a/system/core/Log.php +++ b/system/core/Log.php @@ -198,7 +198,20 @@ class CI_Log { return FALSE; } - $message .= $level.' - '.date($this->_date_fmt).' --> '.$msg."\n"; + // Instantiating DateTime with microseconds appended to initial date is needed for proper support of this format + if (strpos($this->_date_fmt, 'u') !== FALSE) + { + $microtime_full = microtime(TRUE); + $microtime_short = sprintf("%06d", ($microtime_full - floor($microtime_full)) * 1000000); + $date = new DateTime(date('Y-m-d H:i:s.'.$microtime_short, $microtime_full)); + $date = $date->format($this->_date_fmt); + } + else + { + $date = date($this->_date_fmt); + } + + $message .= $level.' - '.$date.' --> '.$msg."\n"; flock($fp, LOCK_EX); diff --git a/user_guide_src/source/changelog.rst b/user_guide_src/source/changelog.rst index 7211210d7..73a183b6c 100644 --- a/user_guide_src/source/changelog.rst +++ b/user_guide_src/source/changelog.rst @@ -553,6 +553,7 @@ Release Date: Not Released - Added a ``$config['log_file_permissions']`` setting. - Changed the library constructor to try to create the **log_path** directory if it doesn't exist. + - Added support for microseconds ("u" date format character) in ``$config['log_date_format']``. - Added `compatibility layers <general/compatibility_functions>` for: |