Rotação e Arquivamento de Registros
Implemente `logrotate` para gerenciar o tamanho dos arquivos de registro, evitar o esgotamento do disco e garantir políticas eficientes de arquivamento de registros.
Rotação e Arquivamento de Registros é uma aula grátis de Linux Server Deployment & SSH Mastery no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Linux Server Deployment & SSH Mastery, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Linux Server Deployment & SSH Mastery inclui 4 aulas no total.
Por que a rotação de registros é importante
Os registros do servidor são essenciais para depuração e monitoramento, mas podem crescer muito ao longo do tempo. Se não forem controlados, podem rapidamente ocupar todo o espaço em disco, causando instabilidade ou até falhas no servidor.
É aí que entra a rotação de registros. Esse é um processo essencial para gerenciar com eficiência o tamanho dos arquivos de registro.
Conhecendo o utilitário `logrotate`
Os sistemas Linux usam um utilitário chamado logrotate para automatizar o gerenciamento de arquivos de registro. Ele foi projetado para:
- Rotacionar os registros (renomear os antigos)
- Comprimir registros antigos para economizar espaço
- Remover arquivos de registro muito antigos
- Executar scripts personalizados após a rotação
A maioria das distribuições Linux já vem com o logrotate instalado e configurado para ser executado diariamente por meio de uma tarefa do cron.
Como o `logrotate` encontra as instruções
O logrotate lê sua configuração de arquivos específicos. Há dois locais principais:
/etc/logrotate.conf: o arquivo de configuração principal, que geralmente contém configurações globais e valores padrão./etc/logrotate.d/: um diretório onde aplicações e serviços individuais colocam suas próprias regras específicas de rotação de registros. Cada arquivo nesse diretório é tratado como uma configuração separada.
Essa abordagem modular facilita o gerenciamento de regras para diferentes serviços.
Definindo a frequência da rotação de registros
Uma das primeiras coisas a definir é a frequência com que os registros devem ser rotacionados. O logrotate oferece várias diretivas para isso:
daily: rotaciona os registros todos os dias.weekly: rotaciona os registros uma vez por semana.monthly: rotaciona os registros uma vez por mês.yearly: rotaciona os registros uma vez por ano.
Escolha uma frequência que equilibre a retenção de detalhes dos registros com o uso do espaço em disco.
Mantendo uma quantidade de registros antigos
A diretiva rotate informa ao logrotate quantos arquivos de registro antigos devem ser mantidos antes que os mais antigos sejam excluídos. Por exemplo, rotate 4 significa que ele manterá o arquivo de registro atual, além de quatro versões rotacionadas (arquivadas).
Quando o limite é atingido, o registro rotacionado mais antigo é removido durante uma nova rotação.
Compactando arquivos de log antigos
Para economizar ainda mais espaço em disco, logrotate pode compactar arquivos de log antigos. A diretiva compress faz exatamente isso, normalmente usando gzip.
Quando essa opção está ativada, seus logs rotacionados aparecerão como arquivos .gz (por exemplo, myapp.log.1.gz). Isso é altamente recomendado para a maioria dos logs de servidores.
Rotacionando por tamanho, não apenas por tempo
Às vezes, os logs podem crescer muito rapidamente, e esperar por uma rotação diária ou semanal não é suficiente. A diretiva size permite rotacionar os logs quando eles excedem determinado tamanho de arquivo, independentemente da frequência definida por tempo.
size 100k: rotaciona se o arquivo de log for maior que 100 quilobytes.size 10M: rotaciona se o arquivo de log for maior que 10 megabytes.size 1G: rotaciona se o arquivo de log for maior que 1 gigabyte.
Se uma frequência de tempo (por exemplo, daily) e size forem especificadas, a rotação ocorrerá quando qualquer uma das condições for atendida.
Exemplo de configuração do `logrotate`
Veja um exemplo simples de um arquivo de configuração que você pode encontrar em /etc/logrotate.d/ para o arquivo de log de um aplicativo hipotético:
Essa configuração rotacionará o log diariamente, manterá 7 cópias antigas e as compactará.
/var/log/my_app/access.log {
daily
rotate 7
compress
notifempty
missingok
}
Executando o `logrotate` manualmente
Embora o logrotate geralmente seja executado automaticamente pelo cron, você pode testar ou forçar uma rotação manualmente. O comando principal é logrotate /etc/logrotate.conf.
Para forçar uma rotação (útil para testar suas configurações), use a opção -f:
logrotate -f /etc/logrotate.d/my_app: força a rotação para um arquivo de configuração específico.logrotate -f /etc/logrotate.conf: força a rotação de todos os logs configurados.
Use a opção -d (depuração) para ver o que o comando faria sem realmente rotacionar nada.
Verificação rápida: retenção de logs
Considere a seguinte configuração do logrotate para /var/log/webserver/error.log:
/var/log/webserver/error.log {
weekly
rotate 4
compress
notifempty
}Se essa configuração estiver em execução há várias semanas, quantos arquivos de log históricos *compactados* você esperaria encontrar a qualquer momento?
Recapitulação: dominando o gerenciamento de logs
Nesta lição, exploramos como gerenciar logs de servidores de forma eficaz usando o logrotate. Aprendemos que:
- A rotação de logs evita o esgotamento do espaço em disco.
- O
logrotateusa arquivos de configuração em/etc/logrotate.confe/etc/logrotate.d/. - As principais diretivas incluem
daily/weekly/monthlypara a frequência,rotatepara a retenção,compresspara economizar espaço esizepara a rotação condicional.
O gerenciamento adequado de logs é fundamental para a operação estável dos servidores!
Aprenda Linux Server Deployment & SSH Mastery com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 12
- Aulas
- 48
Perguntas Frequentes
A aula “Rotação e Arquivamento de Registros” é grátis?
Sim — o texto completo de “Rotação e Arquivamento de Registros” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Linux Server Deployment & SSH Mastery, atualize para CoddyKit PRO. O curso de Linux Server Deployment & SSH Mastery inclui 4 aulas no total.
O que vou aprender em “Rotação e Arquivamento de Registros”?
Implemente `logrotate` para gerenciar o tamanho dos arquivos de registro, evitar o esgotamento do disco e garantir políticas eficientes de arquivamento de registros. Você pratica Linux Server Deployment & SSH Mastery com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Linux Server Deployment & SSH Mastery?
Nenhuma experiência prévia é necessária. Linux Server Deployment & SSH Mastery no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Rotação e Arquivamento de Registros”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Linux Server Deployment & SSH Mastery?
Sim. Cada aula de Linux Server Deployment & SSH Mastery inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Ferramentas de Monitoramento do Sistema
- Entendendo os Registros do Sistema
- Rotação e Arquivamento de Registros
- Monitoramento e Alertas Centralizados