Redis

Redis es un almacén avanzado de clave-valor de código abierto. A menudo se lo denomina servidor de estructura de datos, ya que los valores pueden contener strings, hashes, listas, conjuntos y conjuntos ordenados. Para obtener más información, visita redis.io.

Requisitos previos

Para recopilar y transferir la telemetría de Redis, debes instalar el agente de operaciones versión 2.7.0 o posterior.

Configura el agente de operaciones para Redis

Sigue las instrucciones en Configura el agente de operaciones y agrega los elementos necesarios para recopilar registros de tus instancias de Redis y reinicia el agente.

Configuración de ejemplo

El siguiente comando crea el archivo de configuración para recopilar y transferir registros de Redis y reinicia el agente de operaciones en Linux.

sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
logging:
  receivers:
    redis:
      type: redis
  service:
    pipelines:
      redis:
        receivers:
        - redis
metrics:
  receivers:
    redis:
      type: redis
      endpoint: localhost:6379
      collection_interval: 60s
      password: Strong_Password123
  service:
    pipelines:
      redis:
        receivers:
        - redis
EOF
sudo service google-cloud-ops-agent restart

Configura la recopilación de registros

A fin de transferir registros desde nginx, debes crear receptores para los registros que nginx produce y, luego, crear una canalización para los receptores nuevos. A fin de configurar un receptor para tus registros redis, especifica los siguientes campos:

Campo Predeterminada Descripción
type Este valor debe ser redis.
include_paths [/var/log/redis/redis-server.log, /var/log/redis_6379.log, /var/log/redis/redis.log, /var/log/redis/default.log, /var/log/redis/redis_6379.log] Una lista de rutas de acceso del sistema de archivos que se leerán mediante la visualización del final de cada archivo. Se puede usar un comodín (*) en las rutas. Por ejemplo, /var/log/redis/*.log.
exclude_paths [] Una lista de patrones de ruta de acceso del sistema de archivos que se excluirán del conjunto que coincide con include_paths.

¿Qué se registra?

Los registros contienen los siguientes campos en el LogEntry:

Campo Tipo Descripción
jsonPayload.roleChar string Carácter de función de Redis (X, C, S, M)
jsonPayload.role string Traducido del carácter de función de Redis (sentinel, RDB/AOF_writing_child, slave, principal)
jsonPayload.level string Nivel de entrada de registro
jsonPayload.pid número ID de proceso
jsonPayload.message string Mensaje del registro
severity string (LogSeverity) Nivel de entrada de registro (traducido)
timestamp string (Timestamp) Hora en la que se registró la entrada

Configura la recopilación de métricas

A fin de recopilar métricas de Redis, debes crear un receptor para las métricas de Redis y, luego, crear una canalización destinada al receptor nuevo. A fin de configurar un receptor para las métricas de Redis, especifica los siguientes campos:

Campo Predeterminada Descripción
type Este valor debe ser redis.
address localhost:6379 La URL que expone Redis.
collection_interval 60s Un valor time.Duration, como 30s o 5m.
password La contraseña usada para conectarse al servidor.

Qué se supervisa

En la siguiente tabla, se proporciona una lista de métricas que el agente de operaciones recopila de la instancia de Redis.

Tipo de métrica 
Categoría, tipo
Recursos supervisados
Etiquetas
workload.googleapis.com/redis.clients.blocked
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.clients.connected
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.clients.max_input_buffer
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.clients.max_output_buffer
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.commands.processed
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.connections.received
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.connections.rejected
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.cpu.time
CUMULATIVEDOUBLE
gce_instance
state
workload.googleapis.com/redis.keys.evicted
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.keys.expired
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.keyspace.hits
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.keyspace.misses
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.latest_fork
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.memory.fragmentation_ratio
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/redis.memory.lua
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.memory.peak
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.memory.rss
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.memory.used
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.net.input
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.net.output
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/redis.rdb.changes_since_last_save
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.replication.backlog_first_byte_offset
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.replication.offset
GAUGEINT64
gce_instance
 
workload.googleapis.com/redis.slaves.connected
GAUGEINT64
gce_instance
 

Verifica la configuración

Puedes usar el Explorador de registros y el Explorador de métricas para verificar que configuraste de forma correcta el receptor de Redis. El agente de operaciones puede tardar uno o dos minutos en comenzar a recopilar los registros y las métricas.

Para verificar que se transfieran los registros, ve a Explorador de registros y ejecuta la siguiente consulta a fin de ver los registros de Redis:

resource.type="gce_instance"
logName=("projects/PROJECT_ID/logs/redis")


Para verificar que las métricas se transfieran, ve a Explorador de métricas y ejecuta la siguiente consulta en la pestaña MQL.

fetch gce_instance
| metric 'workload.googleapis.com/redis.connections.received'
| align rate(1m)
| every 1m