php - 如何通过cakephp记录mysql错误?

标签 php mysql debugging cakephp logging

在我的 cakephp Controller 中,我有以下代码

if (is_bool($data_model->save($entry))) 
{
    CakeLog::write('fcshell', "Failed to saved contact data.");
} 
else 
{
    CakeLog::write('fcshell', "Successfully saved contact data ";
}

现在我想打印/检查 mysql 错误/警告日志以及 fcshell.log 文件中的“无法保存”行。

只有一个我能够在其中一个测试实例上重现该问题,即“mysql服务器已消失”,但后来无法重现相同的错误,并且在生产中仍然存在一些错误。我需要确定我是否解决了正确的 mysql 错误。

如果我在生产环境中将 core.php 中的 debug 设置为 2,它将在网页上打印错误。

有人可以帮我找到一种使用 fcshell 日志或任何其他调试方式获取 mysql 调试日志的方法吗?

最佳答案

基于documentation ,当存在验证问题时,保存通常会失败。

您可以记录$data_model->validationErrors,而不是尝试记录 SQL 查询。如果存在模型验证错误,save 查询将不会运行。

尝试类似的事情

CakeLog::write('fcshell', "Failed to saved contact data." . var_export($data_model->validationErrors, true));

关于php - 如何通过cakephp记录mysql错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26256398/

相关文章:

php - 使用 INSERT INTO 时 MySQL 错误 2002

php - 将 CSV 导入 MySQL Workbench,其中文本字段包含数据换行符

php - mysql_query 不返回密码

java - 连接mysql数据库失败

python - R 和 Python 的输出值不同?

c++ - 如何设置 Visual Studio 来调试 DLL ("Unable to start program error")

c# - VS2017中是否可以使用c# "interactive window"代替即时窗口

php从mysql查询中选择输入复选框

php - Qtranslate 语言切换器的自定义 URL

php - 什么 mysql 查询可以让我从这个表中按月获得汇总统计信息?