prometheus-redis-exporter
Тема дорожной карты · Redis
redis_exporter (prometheus-redis-exporter) — стандартный мост с открытым исходным кодом, преобразующий вывод INFO Redis в метрики Prometheus, обеспечивая мониторинг временных рядов и оповещения для любого Redis-развёртывания. После запуска экспортера рядом с Redis-сервером Prometheus с настраиваемыми интервалами собирает метрики: redis_memory_used_bytes, redis_connected_clients, redis_commands_total и redis_keyspace_hits_total. Команды сочетают Redis Prometheus Exporter с Grafana-дашбордами — широко используется поддерживаемый сообществом дашборд с идентификатором 763 — для визуализации коэффициентов попаданий в кэш, скоростей вытеснения и лага репликации в реальном времени. Экспортер также поддерживает мониторинг топологий Redis Cluster и Redis Sentinel, подключаясь к нескольким экземплярам и предоставляя метки на уровне узлов. Развёртывание Redis Prometheus Exporter является лучшей практикой для любой продакшн инфраструктуры кэширования в памяти, требующей наблюдаемости в масштабе.
Как это работает
prometheus-redis-exporter использует INFO (server stats), MONITOR (live-поток команд — только для debug, дорого), SLOWLOG (лог медленных команд с порогом slowlog-log-slower-than), CLIENT LIST (текущие соединения), LATENCY-команды (встроенная диагностика latency). Внешнее: prometheus redis_exporter, RedisInsight (GUI), Grafana-дашборды. Ключевые метрики: hit ratio (keyspace_hits / (hits + misses)), evicted keys, memory fragmentation ratio, connected clients, replication lag.
Когда применять
redis_exporter — с первого дня; метрики крошечные, но спасают день, когда что-то идёт не так. Алерты: memory > 80% maxmemory (eviction storm близко), connected_clients > 80% maxclients, replication lag > 30s, падение hit ratio > 20% за 1h. SLOWLOG — для поиска дорогих команд (KEYS, HGETALL на большом хеше, ZRANGEBYSCORE на огромном sorted set). Никогда не запускайте MONITOR в production больше секунд.
Типичные ошибки
Ловушки prometheus-redis-exporter: MONITOR оставлен работать и валит throughput; alerts только на абсолютные метрики (нет rate() — пропускаете тренды); игнор memory fragmentation (mem_fragmentation_ratio > 1.5 — RAM тратится впустую — рестарт или defrag); нет разделения latency cache-miss от total request latency на дашбордах.