Laravel Heroku SQS 工作人员不断发送空消息,可数错误
Laravel Heroku SQS worker sending empty messages continously, error on countable
我目前 运行 我的 Laravel 5.4 应用程序在 Heroku 上,并为我们的队列使用 SQS。我的 procfile 如下所示:
web: vendor/bin/heroku-php-apache2 public/
worker: php artisan queue:work sqs --tries=3 --daemon
这一直运行良好,并始终如一地处理队列中的所有项目。但是,我注意到每分钟都会出现一个相当一致的错误:
View Bugsnag Error Log。
主要错误是:ErrorExceptionartisan queue:work sqs --tries=3
count(): Parameter must be an array or an object that implements Countable
在 SQS 方面,我注意到 CloudWatch 每分钟跟踪近 100 个空接收 (CloudWatch Error Log)。我对 Laravel's/SQS 系统有基本的了解,所以我不确定这些是否相关,也不确定如何继续调试它们。感谢您提出任何建议或见解!
我不知道空消息是否相关,但是count()
错误是因为
PHP 7.2 添加了一个警告,如果你试图计算一个不可数的实例。此问题已从 Laravel 5.5.25.
起得到解决
您需要将 PHP 降级到 7.1,或者您需要将 Laravel 至少升级到 5.5.25。
我目前 运行 我的 Laravel 5.4 应用程序在 Heroku 上,并为我们的队列使用 SQS。我的 procfile 如下所示:
web: vendor/bin/heroku-php-apache2 public/
worker: php artisan queue:work sqs --tries=3 --daemon
这一直运行良好,并始终如一地处理队列中的所有项目。但是,我注意到每分钟都会出现一个相当一致的错误:
View Bugsnag Error Log。
主要错误是:ErrorExceptionartisan queue:work sqs --tries=3
count(): Parameter must be an array or an object that implements Countable
在 SQS 方面,我注意到 CloudWatch 每分钟跟踪近 100 个空接收 (CloudWatch Error Log)。我对 Laravel's/SQS 系统有基本的了解,所以我不确定这些是否相关,也不确定如何继续调试它们。感谢您提出任何建议或见解!
我不知道空消息是否相关,但是count()
错误是因为
PHP 7.2 添加了一个警告,如果你试图计算一个不可数的实例。此问题已从 Laravel 5.5.25.
您需要将 PHP 降级到 7.1,或者您需要将 Laravel 至少升级到 5.5.25。