Я пытаюсь регистрировать ошибки из моего веб-приложения codeigniter, и я думаю, что сообщения, которые записываются в файл, усекаются. Я говорю это, потому что всякий раз, когда ошибка отображается на экране, я получаю имя файла, где произошла ошибка, тогда как когда я проверяю журналы ошибок, он говорит только:
Ошибка запроса: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с '' по строке 24
- Codeigniter - маршрутизация на контроллер, если он существует, если не использовать dafault
 - Codeigniter: Столбец 'id' в порядке заказа неоднозначен
 - объединение одной и той же таблицы дважды для разных столбцов
 - Как получить детей и идентификатор в jQuery Nestable плагин после перетаскивания элемента и обновления в базе данных?
 - Как загрузить phpseclib в codeigniter
 - IP-адрес отображается в виде действия с CodeIgniter http: // :: 1 / codeigniter / в html sourcecode
 
Есть ли способ, чтобы журнал ошибок возвращал местоположение файла ошибки?
Нет, в настоящее время в CodeIgniter нет встроенного способа сделать это.
  Что вы можете сделать, так это расширить основной класс CI_Log , переопределить его write_log() и использовать debug_backtrace() чтобы получить соответствующее имя файла и добавить его в сообщение. 
 // application / core / MY_Log.php
 класс MY_Log расширяет CI_Log {
     public function write_log ($ level, $ msg)
     {
         foreach (debug_backtrace () как $ call)
         {
             // Как-то найти соответствующий звонок здесь ...
             if (! (/ * условие для игнорирования вызовов обработки ошибок * /))
             {
                 ломать;
             }
             $ msg = '['. $ call ['file']. ']'. $ msg;
             ломать;
         }
         return parent :: write_log ($ level, $ msg);
     }
 }