КраткоОтслеживайте метрики производительности Redis в ClickStack с помощью OTel приёмника Redis. Включает демо-набор данных и преднастроенный дашборд.
Интеграция с существующим Redis
Предварительные требования
- Запущенный экземпляр ClickStack
- Наличие установленного Redis (версии 3.0 или новее)
- Сетевой доступ из ClickStack к Redis (порт по умолчанию — 6379)
- Пароль Redis, если включена аутентификация
Проверьте подключение к Redis
Сначала убедитесь, что вы можете подключиться к Redis и что команда INFO работает:- Локальная установка:
localhost:6379 - Docker: используйте имя контейнера или сервиса (например,
redis:6379) - Удалённый хост:
<redis-host>:6379
Создайте пользовательскую конфигурацию OTel collector
ClickStack позволяет расширить базовую конфигурацию OpenTelemetry Collector, смонтировав пользовательский файл конфигурации и задав переменную окружения. Пользовательская конфигурация объединяется с базовой конфигурацией, которой HyperDX управляет через OpAMP.Создайте файлredis-metrics.yaml со следующей конфигурацией:redis-metrics.yaml
- Подключается к Redis по адресу
localhost:6379(при необходимости измените конечную точку для вашей среды) - Собирает метрики каждые 10 секунд
- Собирает ключевые метрики производительности (команды, клиенты, память, статистика keyspace)
- Устанавливает обязательный атрибут ресурса
service.nameв соответствии с семантическими соглашениями OpenTelemetry - Направляет метрики в ClickHouse exporter через отдельный конвейер
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- Отклонённые подключения
- В пользовательской конфигурации вы определяете только новые приёмники, процессоры и конвейеры
- Процессоры
memory_limiterиbatch, а также exporterclickhouseуже определены в базовой конфигурации ClickStack — вам нужно только сослаться на них по имени - Процессор
resourceустанавливает обязательный атрибутservice.nameв соответствии с семантическими соглашениями OpenTelemetry - Для продакшн-среды с аутентификацией храните пароль в переменной окружения:
${env:REDIS_PASSWORD} - Настройте
collection_intervalв зависимости от ваших потребностей (по умолчанию 10s; меньшие значения увеличивают объём данных) - Для нескольких экземпляров Redis настройте
service.name, чтобы различать их (например,"redis-cache","redis-sessions")
Настройка ClickStack для загрузки пользовательской конфигурации
Чтобы включить пользовательскую конфигурацию collector в существующем развертывании 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 run (образ «всё в одном»)
Если вы используете образ «всё в одном» и запускаете его черезdocker run:Проверьте метрики в HyperDX
После настройки войдите в HyperDX и убедитесь, что метрики поступают:- Перейдите в обозреватель метрик
- Найдите метрики, начинающиеся с
redis.(например,redis.commands.processed,redis.memory.used) - Точки данных метрик должны появляться с настроенным интервалом сбора
Демо-набор данных
Скачайте пример датасета метрик
Скачайте заранее подготовленные файлы метрик (24 часа Redis Metrics с реалистичными паттернами):- Событие прогрева кэша (06:00) - Доля попаданий в кэш растет с 30% до 80%
- Всплеск трафика (14:30-14:45) - 5-кратный рост трафика с повышенной нагрузкой на соединения
- Нехватка памяти (20:00) - Вытеснение ключей и ухудшение производительности кэша
- Суточные паттерны трафика - Пики в рабочие часы, вечерние спады, случайные микровсплески
Запустите ClickStack
Запустите экземпляр ClickStack:Проверьте метрики в HyperDX
После загрузки самый быстрый способ увидеть метрики — воспользоваться преднастроенным дашбордом.Перейдите к разделу Панели мониторинга и визуализация, чтобы импортировать дашборд и сразу просмотреть все Redis Metrics.Временной диапазон демо-набора данных: с 2025-10-20 00:00:00 до 2025-10-21 05:00:00. Убедитесь, что временной диапазон в HyperDX соответствует этому окну.Обратите внимание на следующие интересные паттерны:
- 06:00 - Прогрев кэша (рост доли попаданий в кэш)
- 14:30-14:45 - Всплеск трафика (много клиентских соединений, есть часть отклоненных)
- 20:00 - Нехватка памяти (начинается вытеснение ключей)
Панели мониторинга и визуализация
конфигурацию панели мониторинга
Импортируйте преднастроенный дашборд
- Откройте 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 не отображаются метрики
Ошибки аутентификации
Проблемы с сетевым подключением
docker run оба контейнера подключены к одной сети.
Следующие шаги
- Настройте оповещения для критически важных метрик (пороги использования памяти, лимиты подключений, падение коэффициента попаданий в кэш)
- Создайте дополнительные панели мониторинга для конкретных сценариев использования (задержка репликации, производительность сохранения данных)
- Отслеживайте несколько экземпляров Redis, дублируя конфигурацию приёмника с разными конечными точками и именами сервисов