堆栈跟踪一个mysql错误

时间:2012-12-20 14:16:38

标签: php debugging

我有一个应用程序,其中我们有一个自定义数据库抽象类。这一切都很好地调整,并且工作得很好。

我们最近为查询和连接错误添加了更好的错误记录到文件和数据库。

我们发现自己想要的一件事是能够对调用中涉及的文件运行跟踪。 I.E删除旧代码等。

我们已经使用了一些输出缓冲,使用了debug_print_backtrace()但是对于放入日志的无组织输出不满意。

任何人遇到一个好的处理程序,这使终端日志阅读美观?

该应用程序也是相当遗留的代码,查询与视图和输出混合在一起。如果查询失败而没有重新编写应用程序,是否有任何安全方法可以强制重定向到/error.php页面?

1 个答案:

答案 0 :(得分:0)

你问了几个不同的问题。

首先,你看过debug_backtrace()了吗?它提供了大量信息,使您能够控制日志中的外观和信息量。当然,你必须做一些工作才能将信息输入到日志中,但它应该能很好地完成工作。

关于重定向到error.php页面而不重写应用程序,你将不得不重写一些东西。理论上,您可以修改抽象类以在失败时重定向用户。话虽如此,我认为这不是这种行动的最佳场所。如果是我,我宁愿抽象类返回一个异常,让app包含所有面向用户的逻辑来处理它。否则,你最终会创建一个漏洞的抽象,最终可能会成为更多的技术债务,以便将来解决。