Como devo lidar com logs antes que eles fiquem grandes?

5

Descobri que meu disco estava cheio hoje e libertei 10% apenas da exclusão de registros de vários sites. Eu, pessoalmente, gosto de manter os registros como um arquivo, porque talvez precise olhá-los por qualquer motivo. Eu sou novo em administrar meu servidor LAMP, então eu quero pegar algumas boas práticas. Como periodicamente devo limpar meus logs? Eu deveria mesmo mantê-los? Que outras coisas eu posso fazer periodicamente para limpar os caches e arquivos "temporários" do meu servidor para evitar que ele use todo o espaço em disco novamente?

    
por Doug 22.01.2012 / 22:53

5 respostas

4

Existe uma ferramenta chamada logrotate que foi projetada para fazer exatamente o que você deseja fazer à mão. Dependendo de como você o configura, por exemplo, uma vez por dia, crie um novo arquivo de log e renomeie para o antigo logfile.1, logfile.2 etc. E o mais antigo será excluído.

Dependendo da sua situação, talvez você queira fazer o backup dos arquivos de log para outro servidor também.

Aqui é outro tutorial sobre a ferramenta.

    
por 22.01.2012 / 22:59
2

Sim, use o logrotate para lidar com registros.

Você também pode considerar usar uma ferramenta de monitoramento como monit para avisá-lo de condições críticas no espaço em disco.

    
por 22.01.2012 / 23:27
1

Use logrotate - que já deveria estar no seu sistema debian por padrão.

Você pode simplesmente precisar ajustar as políticas para capturar os registros que não estão sendo rotacionados ou ajustar as políticas de retenção para manter as cópias arquivadas menos longas.

Verifique /etc/logrotate.conf e os arquivos em /etc/logrotate.d/ - se você instalou o Apache através do pacote debian, já deve haver uma política para ele que simplesmente precisa ser apontada em seus logs.

    
por 22.01.2012 / 22:59
1

Além de usar o logrotate, você também pode usar o apache-httpd significa rotatelogs. Mas a sua pergunta também se destina a uma área diferente.

Existem duas razões possíveis para manter registros (http):

  • Estatísticas (e outras mentiras)
  • Acompanhar as condições de erro

Para uma visualização estatística decente, há AWStats . Um programa que analisa arquivos de log e notifica sobre coisas importantes é logwatch .

Se você tiver os dois no lugar, pode girar seus registros depois de alguns dias.

    
por 22.01.2012 / 23:20
1

A resposta real (além do tutorial técnico, que inclui várias formas, incluindo logrotate), é respondida explicando por que você deseja manter os logs. Eu tenho vários clientes que juram que precisam de todos os seus registros. Eles os mantêm por anos e até os sustentam. Até à data, os registos do servidor Web (IIS e Apache) não foram analisados. Nunca ....

Eu sugeriria usar logratate e simplesmente excluir os logs, dependendo de um período razoável para o crescimento do arquivo de log dos sites. Em geral, eu acho que duas semanas de arquivos de log (tempo sábio) é um período de retenção razoável. Estou muito feliz em diminuir isso se o tamanho dos arquivos parece justificar o tamanho da unidade vs. Por exemplo, se eu acabar com 10GB de logs em uma semana, acho que estou diminuindo o limite.

    
por 22.01.2012 / 23:32