Php 可能的突然错误
来自SO的朋友们好强> 好的,这次我有一个更复杂的问题。我们有一个网络爬虫在一天中的大部分时间正常运行 然而,有时它只是停止:下一步应该分析的链接,永远不会改变它的状态(从挂起到扫描),当然这会停止整个循环 我们正在使用以下命令记录所有PHP错误:Php 可能的突然错误,php,mysql,mysqli,database-connection,Php,Mysql,Mysqli,Database Connection,来自SO的朋友们好 好的,这次我有一个更复杂的问题。我们有一个网络爬虫在一天中的大部分时间正常运行 然而,有时它只是停止:下一步应该分析的链接,永远不会改变它的状态(从挂起到扫描),当然这会停止整个循环 我们正在使用以下命令记录所有PHP错误: //errores producción @ini_set('error_reporting', -1); @ini_set('log_errors','On'); @ini_set('display_errors','Off'); @ini_set('
//errores producción
@ini_set('error_reporting', -1);
@ini_set('log_errors','On');
@ini_set('display_errors','Off');
@ini_set('error_log','/var/www/vhosts/xxx.com/xxx.com/xxx');
没有任何证据表明可能导致上述问题。0异常。
因此,我认为问题可能与某种MySQL问题有关。
我们所做的每一个MySQL查询都是由自定义函数使用MySQLi完成的,所以我的问题是:
有没有简单的方法将每个MySQL错误记录在存储PHP错误的同一个文件中?
下面是一些用于查询MySQL的函数:
Function db_ob($db_link, $ask) {
$feedback = mysqli_fetch_object(mysqli_query($db_link, $ask));
return $feedback;
}
以及:
所以我要寻找的是一个一两行的解决方案,我可以将它添加到这些函数中,以便在当前存储PHP错误的同一个文件中存储和跟踪任何问题或错误 提前感谢! 克里斯已解决: 1) 创建一个函数来跟踪PHP错误日志中的错误:
Function informar_error_db($db_link) {
error_log("Dreadful SQL error: ". mysqli_error($db_link)." in ".$_SERVER["SCRIPT_FILENAME"]);
}
2) 如果存在MySQLi问题,请保存它们:
Function db_ask($db_link, $ask) {
$feedback = mysqli_query($db_link, $ask);
if (mysqli_error($db_link)) { informar_error_db($db_link); }
return $feedback;
}
在这里:
if(mysqli_error($db_link)){informar_error_db($db_link)}
Function db_ask($db_link, $ask) {
$feedback = mysqli_query($db_link, $ask);
if (mysqli_error($db_link)) { informar_error_db($db_link); }
return $feedback;
}