我正在构建一个网关,以使应用程序的多个实例能够相互通信。要连接到我正在使用Laravel's Capsule的不同数据库。
当对数据库的请求失败时,我想记录错误但是由于某种原因我无法正确捕获异常。看看日志,捕获工作正在运行,但是之后应用程序仍在死亡。
代码很基本:
try {
// connection and request here
} catch (PDOException $e) {
Log::error('*************************************************************************');
Log::error('Failure reading franchise BDCs');
Log::error('Franchise: '.json_encode($franchise->site_url));
Log::error('*************************************************************************');
}
在日志中,我有以下内容:
[2015-04-29 09:46:35] production.INFO:开始阅读PPFD [] []
[2015-04-29 09:46:35] production.ERROR:
*************** ************************** [] []
[2015-04-29 09:46:35] production.ERROR:读取特许经营BDC失败[] []
[2015-04-29 09:46:35] production.ERROR:特许经营:“https://ppfd.domain.net/”[] []
[2015-04-29 09:46:35] production.ERROR:
*************** ************************** [] []
[2015-04-29 09:46:35] production.ERROR:异常'PDOException',消息'SQLSTATE [HY000] [1045]访问被拒绝用户'test'@'pp.damain.net'(使用密码:YES)'在/var/www/fd/releases/20150423164018/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:47
堆栈追踪:
如何捕获此异常并允许代码继续而不是崩溃?
提前致谢。任何帮助表示赞赏。