【问题标题】:CodeIgniter Stacl TraceCodeIgniter 堆栈跟踪
【发布时间】:2011-05-13 17:25:43
【问题描述】:


我想不时在我的应用程序文件夹中记录堆栈跟踪。
将 debug_backtrace() 的结果写入日志,将导致:

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 11639862 bytes) in /var/www/trunk/api.subdomain.com/libraries/MY_Log.php on line 13

由于 MVC 结构,我如何获得最后 10 个函数调用/堆栈。

谢谢

【问题讨论】:

    标签: php codeigniter logging stack-trace


    【解决方案1】:

    尝试更改php.inimemory_limit 设置。

    如果您正在使用某些托管服务并且您无权访问 php.ini,您仍然可以使用一些 .htaccess 文件和 php_value 指令或 ini_set 函数来更改这些设置。

    .htaccess 示例:

    php_value memory_limit 16M
    

    【讨论】:

    • 更改内存限制通常是一个安全问题,我不想这样做。谢谢
    • @fatnjazzy:我知道,但恐怕你无能为力。 PHP 不提供另一个来获取堆栈跟踪,除了使用一些扩展,如 xdebug。如果您对安全性很感兴趣,也许您可​​以使用 $_SERVER['REMOTE_ADDR'] 检查客户端 IP,并仅从您的 IP 地址增加内存限制。
    猜你喜欢
    • 1970-01-01
    • 2011-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-11
    • 2018-09-19
    • 2016-12-17
    相关资源
    最近更新 更多