【问题标题】:Codeigniter error log not including file nameCodeigniter 错误日志不包括文件名
【发布时间】:2015-10-20 14:17:21
【问题描述】:

我正在尝试从我的 codeigniter Web 应用程序记录错误,我认为写入文件的消息被截断。我这样说是因为每当错误显示在屏幕上时,我都会得到发生错误的文件名,而当我检查错误日志时,它只会说,

查询错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 24 行的 '' 附近使用正确的语法

有没有办法让错误日志返回错误的文件位置?

【问题讨论】:

  • codeigniter has inblit error log please enable at application/config/config.php 将阈值改为1
  • 已经设置为1

标签: php codeigniter logging error-handling


【解决方案1】:

不,目前在 CodeIgniter 中没有内置的方法来执行此操作。

您可以做的是扩展核心CI_Log 类,覆盖其write_log() 方法并使用debug_backtrace() 获取适当的文件名并将其添加到消息中。

// 应用程序/核心/MY_Log.php MY_Log 类扩展 CI_Log { 公共函数 write_log($level, $msg) { foreach (debug_backtrace() as $call) { // 不知何故在这里找到合适的调用... if ( ! (/* 忽略错误处理调用的条件 */)) { 休息; } $msg = '['.$call['file'].'] '.$msg; 休息; } 返回父级::write_log($level, $msg); } }

【讨论】:

    猜你喜欢
    • 2017-03-16
    • 1970-01-01
    • 1970-01-01
    • 2011-05-31
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多