feat(CleanupRedis): add error handling for JSON decode failures in cleanupStuckJobs method
This commit is contained in:
parent
4fa0c581c8
commit
eb70fe00ff
1 changed files with 10 additions and 0 deletions
|
|
@ -378,6 +378,16 @@ private function cleanupStuckJobs($redis, string $prefix, bool $dryRun, bool $is
|
|||
|
||||
// Parse job payload to get job class and started time
|
||||
$payloadData = json_decode($payload, true);
|
||||
|
||||
// Check for JSON decode errors
|
||||
if ($payloadData === null || json_last_error() !== JSON_ERROR_NONE) {
|
||||
$errorMsg = json_last_error_msg();
|
||||
$truncatedPayload = is_string($payload) ? substr($payload, 0, 200) : 'non-string payload';
|
||||
$this->error("Failed to decode job payload for {$keyWithoutPrefix}: {$errorMsg}. Payload: {$truncatedPayload}");
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
$jobClass = data_get($payloadData, 'displayName', 'Unknown');
|
||||
|
||||
// Prefer reserved_at (when job started processing), fallback to created_at
|
||||
|
|
|
|||
Loading…
Reference in a new issue