Skip to content

Commit fb0daa4

Browse files
fix: use StorageManager key() method for pattern in overview
Use StorageManager->key() to build the pattern so it matches how keys are actually stored with the Redis prefix. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent cad36cb commit fb0daa4

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

src/Services/MetricsQueryService.php

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -95,22 +95,23 @@ public function getOverview(): array
9595
$totalFailed = 0;
9696

9797
// Scan Redis for all job metrics keys and aggregate
98-
$pattern = config('database.redis.options.prefix', '') . config('queue-metrics.storage.prefix') . ':jobs:*';
99-
$driver = app(\PHPeek\LaravelQueueMetrics\Storage\StorageManager::class)->driver();
98+
// StorageManager already includes the Redis prefix, so we only need our pattern
99+
$manager = app(\PHPeek\LaravelQueueMetrics\Storage\StorageManager::class);
100+
$pattern = $manager->key('jobs', '*', '*', '*');
101+
$driver = $manager->driver();
100102

101103
// Get all job metrics keys
102-
$keys = [];
103-
$cursor = '0';
104-
do {
105-
$result = $driver->scanKeys($pattern);
106-
if (is_array($result)) {
107-
$keys = array_merge($keys, $result);
108-
break;
109-
}
110-
} while (false);
104+
$keys = $driver->scanKeys($pattern);
111105

112106
// Sum metrics from all keys
113107
foreach ($keys as $key) {
108+
// Remove the Redis prefix to get the relative key for getHash
109+
$relativeKey = str_replace(
110+
config('database.redis.options.prefix', '') . config('queue-metrics.storage.prefix') . ':',
111+
'',
112+
$key
113+
);
114+
114115
$data = $driver->getHash($key);
115116
if (is_array($data)) {
116117
$totalProcessed += (int) ($data['total_processed'] ?? 0);

0 commit comments

Comments
 (0)