Lendo logs redis

Lendo logs redis

“Redis é um banco de dados de memória amplamente utilizado que armazena dados como pares de valor-chave. Geralmente, o syslog mantém o registro Redis. Pode preservar toras de várias fontes. Mas se o registro Redis lidar com muito mais registros, causará baixo desempenho do sistema. Então, para processamento adicional, o Syslog permite o encaminhamento de todos os logs para o servidor de log centralizado.”

Configurando o registro Redis

Usando o comando abaixo, podemos abrir o arquivo de configuração do servidor Redis localizado em /etc/redis/redis.conf.

$ sudo nano/etc/redis/redis.conf

Quando você define o nome e o diretório de um arquivo de log, você precisa usar a Diretiva LogFile. Geralmente, /var/log é o diretório padrão do log syslog; Além disso, a configuração padrão armazena o log neste diretório. Você não precisa mudar isso de novo e de novo porque, por padrão, o syslog mantém todos os logs no /var/log diretório. Quando a diretiva habilitada para syslog é comentada, você deve descomentar esta linha e definir o valor como sim. Para cada registro de syslog, esta string será presa.

Abaixo você pode ver as linhas que mostram o arquivo editado,

Eventualmente, você pode salvar e fechar o arquivo. Mas de repente, se você deseja aplicar a nova configuração, poderá usar o comando abaixo.

$ sudo systemct1 reiniciar redis

Lendo logs syslog

Você tem duas opções de linha de comando. Se você deseja acessar os registros syslog relacionados a Redis,

Visualizando o arquivo de log no terminal

Como o Redis registra todas as mensagens no syslog e no arquivo personalizado, você pode ver o arquivo de log Redis diretamente. Na fase anterior, salvamos os registros Redis no arquivo ./var/log/redis/redis-server.registro. A execução do comando CAT permitirá que você examine este arquivo da seguinte maneira.

$ Cat/var/log/redis/redis-server.registro

Usando o comando acima, você pode inspecionar o conteúdo do arquivo de log do Redis da seguinte forma.

Consulta usando o JournalCtl

Todos os logs são controlados pelo Serviço Journald, que faz parte do Systemd (o Ubuntu usa o Systemd Service Manager). O Journal Fornece a ferramenta de linha de comando JournalCtl, que pesquisam entradas do syslog usando vários critérios e apresenta os resultados. Se o seu servidor Redis estiver configurado para fazer login no syslog, você poderá usar o seguinte comando para recuperar as entradas do Syslog do Serviço Redis:

$ journalctl -u redis -server.serviço

Este comando -u parte limita a tela às entradas syslog associadas ao Redis -Server.serviço

A saída exibe as entradas duplicadas no arquivo de log de visualização e JournalCtl mas usa um formato de data e hora diferente e não contém alguns cabeçalhos de metadados incluídos no syslog (nome do processo e outros).

Redis registrando com o Docker

Redis Log Manutenção requer o uso de um driver de registro de docker, se você deseja executar redis dentro de um contêiner do docker.

Download de contêiner Redis

Para recuperar a imagem original do Docker Hub, devemos usar o comando e o nome da imagem do Docker Pull Redis. Isso pode ser feito da seguinte maneira.

$ sudo docker puxar redis

Como visto na saída, o Docker o salva localmente e o torna acessível para a execução de contêineres depois de buscar uma imagem.

Executando o contêiner e o log de visualização

Ao dar o comando do Docker Run, você pode iniciar o contêiner Redis.

$ sudo docker run -d -p 23200: 23200 - -nome My -Redis redis

Opção -D imprime o ID do contêiner ao executar o contêiner em segundo plano (uso típico do servidor de banco de dados). O que acontece aqui é que a porta de contêiner Redis 23200 mapeará para a porta 23200 da máquina local. O nome do contêiner para My -Redis é determinado pela opção -name.

Se você deseja inspecionar o recipiente Redis, poderá executar logs do Docker com o log de nome do contêiner da seguinte maneira.

$ sudo docker logs my-redis

A saída exibe entradas de log relacionadas a Redis que fornecem informações sobre inicialização e inicialização de serviços. Como você pode ver, o syslog e o log do Docker são comparáveis.

Seria melhor se você usasse o Docker rm - - a força para desligar este contêiner.

Rotação de log de redis

Como os arquivos de log sempre se expandem com o tempo, seu tamanho deve ser gerenciado. Linux usa um conceito conhecido como rotação de log para resolver este problema. Vamos configurar a rotação de log para redis usando syslog nesta fase. Um daemon chamado Logrotate faz parte do syslog, garantindo que todos os troncos sejam girados. Ubuntu 20.04, por padrão, usa Logrotate (incluindo rotação do log de redis se instalado). O arquivo /etc/Logrotate.D/Redis-Server Define as configurações de rotação do log para a rotação do log de redis.

Agora podemos abrir o arquivo usando o comando abaixo.

$ sudo nano /etc /Logrotate.D/Redis-Server

As diretrizes incluídas nos colchetes encaracolados especificam como girar o log no diretório especificado acima. Redis gira toras usando os seguintes parâmetros de acordo com o arquivo:

Semanalmente: Os logs são alternados. Como alternativa, você pode escolher um prazo diferente (diariamente, semanalmente, mensalmente ou anualmente). O Daemon Logrotate funciona diariamente, mas você pode especificar alternativamente que ele gira a cada hora (a cada hora). Para girar toras a cada hora em tal situação, você deve modificar o intervalo de trabalho do Logrotate Cron.

Falta OK: Se o arquivo de log estiver ausente, o daemon não relata nenhum erro.

Gire 12: Doze rotações de arquivos de log são realizadas antes da exclusão. As versões mais antigas são destruídas em vez de girar se a rotação for definida como 0.

Comprimir: Arquivos de log desatualizados serão compactados com GZIP.

notifempty: Se o tronco estiver vazio, não gire -o.

As páginas de documentação do Logrotate detalham cada instrução em potencial. O homem do homem pode ser usado para vê -los. Você pode modificar essas opções, adicionar novas ou tirar algumas delas. Você decide qual configuração usar. Ao definir parâmetros de rotação de log, o arquivo pode ser salvo e fechado. Agora, o Logrotate girará rotineiramente seus registros Redis.

Conclusão

Para resumir, o registro de syslog é extremamente útil na geração de toras Redis. Você pode observar os registros Redis consultando diretamente o JournalCTL e abrindo o arquivo de log. Usando o daemon girar os logs, você configura a rotação do log de redis. A imagem Redis Docker foi baixada, executada dentro do contêiner, e os registros do docker associados foram lidos.