En resumenMonitoriza las métricas de rendimiento de Redis en ClickStack con el receiver de Redis de OTel. Incluye un dataset de demostración y un dashboard preconfigurado.
Integración con una instalación existente de Redis
Requisitos previos
- Instancia de ClickStack en funcionamiento
- Instalación existente de Redis (versión 3.0 o posterior)
- Acceso de red desde ClickStack a Redis (puerto predeterminado: 6379)
- Contraseña de Redis si la autenticación está habilitada
Verifique la conexión con Redis
Primero, verifique que puede conectarse a Redis y que el comando INFO funcione:- Instalación local:
localhost:6379 - Docker: Usa el nombre del contenedor o del servicio (p. ej.,
redis:6379) - Remoto:
<redis-host>:6379
Crear una configuración personalizada del OTel collector
ClickStack le permite ampliar la configuración base del OpenTelemetry Collector montando un archivo de configuración personalizado y definiendo una variable de entorno. La configuración personalizada se combina con la configuración base administrada por HyperDX mediante OpAMP.Cree un archivo llamadoredis-metrics.yaml con la siguiente configuración:redis-metrics.yaml
- Se conecta a Redis en
localhost:6379(ajusta el endpoint según tu entorno) - Recopila métricas cada 10 segundos
- Recopila métricas clave de rendimiento (comandos, clientes, memoria y estadísticas del espacio de claves)
- Establece el atributo de recurso
service.namerequerido según las convenciones semánticas de OpenTelemetry - Envía las métricas al ClickHouse exporter a través de una canalización dedicada
redis.commands.processed- Comandos procesados por segundoredis.clients.connected- Número de clientes conectadosredis.clients.blocked- Clientes bloqueados en llamadas bloqueantesredis.memory.used- Memoria utilizada por Redis en bytesredis.memory.peak- Uso máximo de memoriaredis.keyspace.hits- Búsquedas de claves correctasredis.keyspace.misses- Búsquedas de claves fallidas (para calcular la tasa de aciertos de caché)redis.keys.expired- Claves expiradasredis.keys.evicted- Claves desalojadas debido a la presión de memoriaredis.connections.received- Total de conexiones recibidasredis.connections.rejected- Conexiones rechazadas
- En la configuración personalizada, solo defines nuevos receiver, processors y canalizaciones
- Los processors
memory_limiterybatch, y el exporterclickhouse, ya están definidos en la configuración base de ClickStack; solo los referencias por nombre - El processor
resourceestablece el atributoservice.namerequerido según las convenciones semánticas de OpenTelemetry - Para producción con autenticación, almacena la contraseña en una variable de entorno:
${env:REDIS_PASSWORD} - Ajusta
collection_intervalsegún tus necesidades (10 s de forma predeterminada; valores más bajos aumentan el volumen de datos) - Para varias instancias de Redis, personaliza
service.namepara distinguirlas (p. ej.,"redis-cache","redis-sessions")
Configurar ClickStack para cargar una configuración personalizada
Para habilitar una configuración personalizada del collector en su implementación actual de ClickStack, debe:- Montar el archivo de configuración personalizada en
/etc/otelcol-contrib/custom.config.yaml - Establecer la variable de entorno
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yaml - Asegurar la conectividad de red entre ClickStack y Redis
Opción 1: Docker Compose
Actualice la configuración de su implementación de ClickStack:Opción 2: Docker run (imagen todo en uno)
Si usas la imagen todo en uno condocker run:Verifica las métricas en HyperDX
Una vez configurado, inicia sesión en HyperDX y verifica que las métricas estén llegando:- Ve al explorador de métricas
- Busca métricas que empiecen por
redis.(p. ej.,redis.commands.processed,redis.memory.used) - Deberías ver puntos de datos de métricas según el intervalo de recopilación configurado
Conjunto de datos de demostración
Descargue el conjunto de datos de métricas de muestra
Descargue los archivos de métricas pregenerados (24 horas de Redis Metrics con patrones realistas):- Evento de calentamiento de la caché (06:00) - La tasa de aciertos sube del 30 % al 80 %
- Pico de tráfico (14:30-14:45) - Aumento del tráfico de 5 veces con presión sobre las conexiones
- Presión de memoria (20:00) - Expulsión de claves y degradación del rendimiento de la caché
- Patrones diarios de tráfico - Picos en horario laboral, descensos por la noche y micro-picos aleatorios
Inicie ClickStack
Inicie una instancia de ClickStack:Verifique las métricas en HyperDX
Una vez cargadas, la forma más rápida de ver sus métricas es a través del dashboard preconfigurado.Vaya a la sección Dashboards y visualización para importar el dashboard y ver todas las Redis Metrics de una sola vez.El rango temporal del conjunto de datos de demostración es de 2025-10-20 00:00:00 a 2025-10-21 05:00:00. Asegúrese de que el rango temporal en HyperDX coincida con esta ventana.Busque estos patrones interesantes:
- 06:00 - Calentamiento de la caché (tasa de aciertos baja, pero en aumento)
- 14:30-14:45 - Pico de tráfico (muchas conexiones de clientes y algunos rechazos)
- 20:00 - Presión de memoria (comienzan las expulsiones de claves)
Dashboards y visualización
la configuración del dashboard
Importar el dashboard preconfigurado
- Abre HyperDX y ve a la sección Dashboards
- Haz clic en Import Dashboard en la esquina superior derecha, en el menú de puntos suspensivos
- Sube el archivo
redis-metrics-dashboard.jsony haz clic en Finish Import
Ver el dashboard
El dashboard se creará con todas las visualizaciones ya configuradas:Para el demo dataset, establece el intervalo de tiempo en 2025-10-20 05:00:00 - 2025-10-21 05:00:00 (UTC) (ajústalo según tu zona horaria local). El dashboard importado no tendrá ningún intervalo de tiempo especificado de forma predeterminada.
Solución de problemas
La configuración personalizada no se carga
CUSTOM_OTELCOL_CONFIG_FILE esté configurada correctamente:
/etc/otelcol-contrib/custom.config.yaml:
No aparecen métricas en HyperDX
Errores de autenticación
Problemas de conectividad de red
docker run sitúen ambos contenedores en la misma red.
Siguientes pasos
- Configura alertas para métricas críticas (umbrales de uso de memoria, límites de conexión, caídas en la tasa de aciertos de la caché)
- Crea dashboards adicionales para casos de uso específicos (retraso de replicación, rendimiento de la persistencia)
- Supervisa varias instancias de Redis duplicando la configuración del receiver con distintos endpoints y nombres de servicio