profits($data); if (!is_string($res)) { // 记录成功日志 QueueLogger::success('ZeroUserProfits', $job, $data, $res); $job->delete(); } else { // 记录业务执行失败但未异常的情况 QueueLogger::warning('ZeroUserProfits', $job, $data, '业务执行返回false,错误信息:' . $res); if ($job->attempts() > 3) { // 超过重试次数,调用failed方法记录异常状态 $this->failed($data); $job->delete(); } } } catch (\Exception $e) { // 记录异常日志 QueueLogger::error('ZeroUserProfits', $job, $data, $e); if ($job->attempts() > 3) { // 超过重试次数,调用failed方法记录异常状态 $this->failed($data); $job->delete(); } } // 记录任务结束日志 QueueLogger::end('ZeroUserProfits', $job, $data); } public function failed($data) { try { // 记录任务失败日志 QueueLogger::failed('ZeroUserProfits', $data); // 在数据库中标记数据异常状态 if (isset($data['logId']) && !empty($data['logId'])) { // 更新ZeroUserProfits表的status字段为异常状态 ZeroUserProfitsModel::where('id', $data['logId']) ->update([ 'status' => 3, // 假设2表示异常状态 'update_time' => time() ]); QueueLogger::info('ZeroUserProfits任务失败状态已更新', [ 'data_id' => $data['logId'], 'status' => 2 ]); } } catch (\Exception $e) { // 记录数据库更新异常 QueueLogger::error('ZeroUserProfits任务失败状态更新异常', null, $data, $e); } } }