这里详细描述问题
下面放在外面无法捕获,直接显示报错信息了
try {
$config = \config('cache.stores.redis');
$client = new Client($config['type'] . '://' . $config['host'] . ':' . $config['port'], ['auth' => $config['password']]);
// 订阅
$client->subscribe('video', function ($data) {
event('videoClip', $data);
});
} catch (\Throwable $e) {
log_error($e, '【视频剪辑定时任务】【videoClip】', 'command_video');
}
下面放在里面正常可以捕获并且写入日记了
$config = \config('cache.stores.redis');
$client = new Client($config['type'] . '://' . $config['host'] . ':' . $config['port'], ['auth' => $config['password']]);
// 订阅
$client->subscribe('video', function ($data) {
try {
event('videoClip', $data);
} catch (\Throwable $e) {
log_error($e, '【视频剪辑定时任务】【videoClip】', 'command_video');
}
});
window10
workerman和Workerman\RedisQueue都是最新版
第一段代码在运行完try catch的时候还没执行video的回调,不会捕捉video回调里的异常
了解,感谢老大的回复!!!!