Redis Monitoring

@if(isset($metrics['status']) && $metrics['status'] === 'error')

Error: {{ $metrics['error'] ?? 'Unknown error' }}

@elseif(isset($metrics['status']))
Performance
Ops/sec: {{ number_format($metrics['performance']['instantaneous_ops_per_sec'] ?? 0) }}
Input: {{ $metrics['performance']['instantaneous_input_kbps'] ?? 0 }} KB/s
Output: {{ $metrics['performance']['instantaneous_output_kbps'] ?? 0 }} KB/s
Total Commands: {{ number_format($metrics['total_commands'] ?? 0) }}
Memory
Used: {{ $metrics['memory']['used_human'] ?? '0B' }}
Peak: {{ $metrics['memory']['peak_human'] ?? '0B' }}
@if(isset($metrics['memory']['usage_percent']))
Usage {{ $metrics['memory']['usage_percent'] }}%
@endif
Cache Performance
Hit Rate: {{ $metrics['hit_rate'] }}% @if(($metrics['hit_rate_status'] ?? 'warning') === 'warning' && $metrics['hit_rate'] < 40) @endif
Hits: {{ number_format($metrics['keyspace_hits'] ?? 0) }}
Misses: {{ number_format($metrics['keyspace_misses'] ?? 0) }}
@if(($metrics['hit_rate_status'] ?? 'warning') === 'warning' && $metrics['hit_rate'] < 40)
ℹ️ Cache hit rate is improving as cache warms up. This is expected after recent cache optimizations.
@endif
@if(!empty($metrics['key_distribution']))
Key Distribution (Top 10)
@foreach($metrics['key_distribution'] as $prefix => $count)
{{ $prefix }}
{{ number_format($count) }}
@endforeach
@endif @if(!empty($metrics['stale_locks']))
⚠ Stale Locks Detected
@foreach(array_slice($metrics['stale_locks'], 0, 5) as $lock)
{{ $lock['key'] }} {{ $lock['ttl'] }}
@endforeach @if(count($metrics['stale_locks']) > 5)

... and {{ count($metrics['stale_locks']) - 5 }} more

@endif
@endif @if(isset($metrics['persistence']))
Persistence
Last RDB Save: {{ $metrics['persistence']['rdb_last_save'] ?? 'Unknown' }}
Changes Since Save: {{ number_format($metrics['persistence']['rdb_changes_since_save'] ?? 0) }}
@endif @endif