Мониторинг метрик Redis с помощью ClickStack
В этом руководстве показано, как отслеживать метрики производительности Redis с помощью ClickStack, настроив Redis receiver в OTel collector. Вы узнаете, как:
- Настроить OTel collector для сбора метрик Redis
- Развернуть ClickStack с вашей собственной конфигурацией
- Использовать готовый дашборд для визуализации производительности Redis (команды/с, использование памяти, подключенные клиенты, эффективность кэша)
Демо-набор данных с примерами метрик доступен, если вы хотите протестировать интеграцию перед настройкой вашего боевого Redis.
Требуемое время: 5–10 минут
Интеграция с существующим Redis
В этом разделе описывается, как настроить вашу существующую установку Redis для отправки метрик в ClickStack путём настройки ClickStack OTel collector с приёмником Redis.
Если вы хотите протестировать интеграцию метрик Redis, прежде чем настраивать собственную инфраструктуру, вы можете использовать наш предварительно настроенный демонстрационный набор данных в следующем разделе.
Предварительные требования
- Запущенный экземпляр ClickStack
- Установка Redis версии 3.0 или новее
- Сетевой доступ от ClickStack к Redis (порт по умолчанию 6379)
- Пароль Redis, если включена аутентификация
Проверка подключения к Redis
Сначала проверьте, что вы можете подключиться к Redis и что команда INFO работает:
Если для Redis требуется аутентификация:
Общие конечные точки Redis:
- Локальный экземпляр:
localhost:6379 - Docker: используйте имя контейнера или имя службы (например,
Redis:6379) - Удалённый сервер:
<redis-host>:6379
Создайте пользовательскую конфигурацию OTel collector
ClickStack позволяет расширить базовую конфигурацию коллектора OpenTelemetry путём монтирования пользовательского конфигурационного файла и установки переменной окружения. Пользовательская конфигурация объединяется с базовой конфигурацией, управляемой HyperDX через OpAMP.
Создайте файл redis-metrics.yaml со следующей конфигурацией:
Эта конфигурация:
- Подключается к Redis на
localhost:6379(измените endpoint в соответствии с вашей конфигурацией) - Собирает метрики каждые 10 секунд
- Собирает ключевые метрики производительности (команды, клиенты, память, статистика по пространству ключей)
- Устанавливает обязательный атрибут ресурса
service.nameсогласно семантическим соглашениям OpenTelemetry - Маршрутизирует метрики в экспортёр ClickHouse через отдельный конвейер
Собираемые ключевые метрики:
redis.commands.processed- Число обработанных команд в секундуredis.clients.connected- Количество подключенных клиентовredis.clients.blocked- Клиенты, заблокированные из-за блокирующих вызововredis.memory.used- используемая Redis память в байтахredis.memory.peak- Пиковое потребление памятиredis.keyspace.hits- Успешные обращения к ключамredis.keyspace.misses- Неуспешные обращения к ключам (для расчёта коэффициента попаданий в кэш)redis.keys.expired- Истекшие ключиredis.keys.evicted- Ключи, удалённые при нехватке памятиredis.connections.received- Общее число принятых подключенийredis.connections.rejected- Отклонённые подключения
- В пользовательской конфигурации вы задаёте только новые receivers, processors и pipelines
- Процессоры
memory_limiterиbatch, а также экспортерclickhouseуже определены в базовой конфигурации ClickStack — достаточно сослаться на них по имени - Процессор
resourceзадаёт необходимый атрибутservice.nameв соответствии с семантическими соглашениями OpenTelemetry - В production-среде с аутентификацией храните пароль в переменной окружения:
${env:REDIS_PASSWORD} - Настройте
collection_intervalв соответствии с вашими потребностями (по умолчанию — 10s; меньшие значения увеличивают объем собираемых данных) - Для нескольких инстансов Redis задайте
service.name, чтобы отличать их (например,"redis-cache","redis-sessions")
Настройте ClickStack для загрузки пользовательской конфигурации
Чтобы включить пользовательскую конфигурацию коллектора в существующем развертывании ClickStack, необходимо:
- Смонтируйте пользовательский конфигурационный файл в
/etc/otelcol-contrib/custom.config.yaml - Установите переменную окружения
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yaml - Убедитесь, что между ClickStack и Redis есть сетевое соединение
Вариант 1: Docker Compose
Обновите конфигурацию развёртывания ClickStack:
Вариант 2: Запуск через Docker (универсальный образ)
При использовании универсального образа с docker run:
Важно: Если Redis запущен в другом контейнере, используйте сеть Docker:
Проверка метрик в HyperDX
После настройки войдите в HyperDX и убедитесь, что метрики поступают:
- Перейдите в раздел «Metrics Explorer»
- Найдите метрики, начинающиеся с
redis.(например,redis.commands.processed,redis.memory.used) - Вы должны увидеть, как точки метрик появляются с настроенным интервалом сбора
Демонстрационный набор данных
Для пользователей, которые хотят протестировать интеграцию метрик Redis перед настройкой своих производственных систем, мы предоставляем предварительно сгенерированный набор данных с реалистичными паттернами метрик Redis.
Загрузка примерного набора метрик
Скачайте предварительно сгенерированные файлы метрик (24 часа метрик Redis с реалистичными паттернами):
Набор данных включает реалистичные паттерны:
- Событие прогрева кэша (06:00) — доля попаданий растет с 30% до 80%
- Пик трафика (14:30–14:45) — 5-кратный скачок трафика с ростом нагрузки на подключения
- Дефицит памяти (20:00) — удаление ключей и деградация производительности кэша
- Ежедневные паттерны трафика — пики в рабочие часы, спад вечером, случайные небольшие всплески
Запуск ClickStack
Запустите экземпляр ClickStack:
Подождите примерно 30 секунд, пока ClickStack полностью не запустится.
Проверка метрик в HyperDX
После загрузки самый быстрый способ просмотреть метрики — использовать предварительно созданную панель.
Перейдите к разделу Панели и визуализация, чтобы импортировать панель и просмотреть все метрики Redis сразу.
Диапазон времени демонстрационного набора данных: с 2025-10-20 00:00:00 по 2025-10-21 05:00:00. Убедитесь, что диапазон времени в HyperDX соответствует этому окну.
Обратите внимание на следующие интересные паттерны:
- 06:00 — прогрев кэша (низкая доля попаданий постепенно растет)
- 14:30–14:45 — пик трафика (высокое количество клиентских подключений, некоторые отказы)
- 20:00 — дефицит памяти (начинается удаление ключей)
Дашборды и визуализация
Чтобы помочь вам начать мониторинг Redis с помощью ClickStack, мы предоставляем основные визуализации для метрик Redis.
Импорт готового дашборда
- Откройте HyperDX и перейдите в раздел Dashboards
- Нажмите Import Dashboard в правом верхнем углу под значком с многоточием

- Загрузите файл
redis-metrics-dashboard.jsonи нажмите Finish Import

Просмотр дашборда
Дашборд будет создан со всеми преднастроенными визуализациями:

Для демонстрационного набора данных установите диапазон времени 2025-10-20 05:00:00 - 2025-10-21 05:00:00 (UTC) (при необходимости скорректируйте под ваш часовой пояс). По умолчанию у импортированного дашборда не будет задан диапазон времени.
Устранение неполадок
Пользовательская конфигурация не загружается
Убедитесь, что переменная окружения CUSTOM_OTELCOL_CONFIG_FILE установлена корректно:
Убедитесь, что пользовательский файл конфигурации смонтирован в /etc/otelcol-contrib/custom.config.yaml:
Просмотрите содержимое пользовательской конфигурации и убедитесь, что его можно прочитать:
Метрики не отображаются в HyperDX
Убедитесь, что Redis доступен из коллектора:
Проверьте, работает ли команда INFO в Redis:
Убедитесь, что эффективная конфигурация включает ваш ресивер Redis:
Проверьте журналы коллектора на наличие ошибок:
Ошибки аутентификации
Если вы видите ошибки аутентификации в журналах:
Обновите конфигурацию, чтобы использовать пароль:
Проблемы с сетевой связью
Если ClickStack не может подключиться к Redis:
Убедитесь, что в вашем файле Docker Compose или командах docker run оба контейнера подключены к одной сети.
Следующие шаги
Если вы хотите продолжить изучение, вот несколько следующих шагов для экспериментов с мониторингом:
- Настройте оповещения для критически важных метрик (пороги использования памяти, лимиты подключений, падение коэффициента попаданий в кэш)
- Создайте дополнительные дашборды для конкретных сценариев использования (лаг репликации, производительность персистентного хранилища)
- Мониторьте несколько экземпляров Redis, дублируя конфигурацию receiver с разными endpoint и именами сервисов