Redis

O Redis é um armazenamento de chave-valor avançado e de código aberto. Ele também costuma ser conhecido como um servidor de estrutura de dados, já que os valores podem conter strings, hashes, listas e conjuntos classificados. Para saber mais, visite redis.io (em inglês).

Pré-requisitos

Para coletar e ingerir a telemetria do Redis, instale o agente de operações versão 2.7.0 ou mais recente.

Configure o agente de operações para Redis

Seguindo o guia para Configurar o agente de operações, adicione os elementos necessários para coletar registros das instâncias do Redis e reinicie o agente.

Exemplo de configuração

O comando a seguir cria o arquivo de configuração para coletar e ingerir registros do Redis e reinicia o agente de operações no 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
      address: localhost:6379
      collection_interval: 60s
      password: Strong_Password123
  service:
    pipelines:
      redis:
        receivers:
        - redis
EOF
sudo service google-cloud-ops-agent restart

Configurar a coleta de registros

Para ingerir registros do Redis, é preciso criar receptores para os registros que o Redis produz e criar um pipeline para os novos receptores. Para configurar um receptor para os registros redis, especifique os seguintes campos:

Campo Padrão Descrição
type Este valor precisa 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] Uma lista de caminhos do sistema de arquivos a serem lidos acompanhando cada arquivo. Um caractere curinga (*) pode ser usado nos caminhos. por exemplo, /var/log/redis/*.log.
exclude_paths [] Uma lista de padrões de caminho do sistema de arquivos a serem excluídos do conjunto correspondente a include_paths.
wildcard_refresh_interval 60s O intervalo em que os caminhos de arquivos curinga no include_paths são atualizados. Dado como uma duração de tempo, por exemplo, 30s, 2m. Essa propriedade pode ser útil com capacidades altas de registro em que os arquivos de registro são alternados mais rapidamente do que o intervalo padrão.

O que é registrado

Os registros do Redis contêm os seguintes campos no LogEntry:

Campo Tipo Descrição
jsonPayload.roleChar string Caractere do papel do Redis (X, C, S, M)
jsonPayload.role string Traduzido do caractere de papel do Redis (sentinel, RDB/AOF_writing_child, slave, master)
jsonPayload.level string Nível de entrada de registro
jsonPayload.pid número ID do processo
jsonPayload.message string Mensagem de registro
severity string (LogSeverity) Nível de entrada de registro (traduzido)
timestamp string (Timestamp) Hora em que a entrada foi registrada

Configurar a coleta de métricas

Para coletar métricas do Redis, crie um receptor para as métricas do Redis e, em seguida, crie um pipeline para o novo receptor. Para configurar um receptor para suas métricas do Cassandra, especifique os campos a seguir:

Campo Padrão Descrição
type Este valor precisa ser redis.
address localhost:6379 O URL exposto pelo Redis.
collection_interval 60s Um valor de time.Duration, como 30s ou 5m.
password A senha usada para se conectar ao servidor.

O que é monitorado?

A tabela a seguir fornece a lista de métricas que o agente de operações coleta da instância do Redis.

Tipo de métrica 
Tipo, tipo
Recursos monitorados
Rótulos
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
 

Amostra de painel

Para visualizar as métricas dessa integração, use um exemplo de painel do Cloud Monitoring. Conclua os procedimentos de Como instalar painéis de amostra para importar o painel Visão geral do GCE do Redis da Biblioteca de amostras e ver os gráficos que exibem as métricas do Redis.

Verificar a configuração

É possível usar o Explorador de registros e o Metrics Explorer para verificar se você configurou corretamente o receptor do Redis. Pode levar um ou dois minutos para o agente de operações começar a coletar registros e métricas.

Para verificar se os registros são ingeridos, acesse o Explorador de registros e execute a seguinte consulta para ver os registros Redis:

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


Para verificar se as métricas são ingeridas, acesse o Metrics Explorer e execute a seguinte consulta na guia do MQL.

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

A seguir

Para ver um tutorial sobre como usar o Ansible para instalar o agente de operações, configurar um aplicativo de terceiros e instalar um painel de amostra, consulte o vídeo Instalar o agente de operações para resolver problemas de aplicativos de terceiros.