我们已经让Horizon运行了相当长的一段时间,并且没有任何问题。 但是,在我们最新的生产部署之后,它仍然处于非活动状态,并且没有任何工人开始工作。
我看不到问题,也没有将任何错误记录到bugsnag中,所以我在这里有点迷失了。
用Horizon调试问题的最佳方法是什么?我已经验证,可以和redis交谈。仪表板还显示队列中的作业,因此这只是工人没有开始的问题。
我们正在使用Laravel forge设置实例,我可以确认在正确的目录中有一个运行php artisan horizon的守护程序。在服务器上手动运行该命令也不会给我太多信息,我可以使用。
我确定这一定是一些错误,但是不会被捕获/显示/任何错误。有关如何正确调试此功能的任何想法?
这是config / horizon.php的内容:
<?php
return [
'use' => 'default',
'waits' => [
'redis:default' => 60,
],
'environments' => [
'dev' => [
'all-prio' => [
'connection' => 'redis',
'queue' => ['default', 'high', 'medium', 'low'],
'balance' => 'auto',
'processes' => 10,
'tries' => 3,
],
],
'acc' => [
'all-prio' => [
'connection' => 'redis',
'queue' => ['default', 'high', 'medium', 'low'],
'balance' => 'auto',
'processes' => 10,
'tries' => 3,
],
],
'production' => [
'high-prio' => [
'connection' => 'redis',
'queue' => ['high'],
'balance' => 'auto',
'processes' => 10,
'tries' => 5,
],
'default-prio' => [
'connection' => 'redis',
'queue' => ['medium', 'default'],
'balance' => 'auto',
'processes' => 10,
'tries' => 3,
],
'low-prio' => [
'connection' => 'redis',
'queue' => ['low'],
'balance' => 'auto',
'processes' => 5,
'tries' => 3,
],
],
],
];
该环境已在该环境中正确设置为“生产”。
这是config / database.php redis部分的内容:
'redis' => [
'cluster' => false,
'default' => [
'host' => env('REDIS_HOST', 'localhost'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => 0,
]