Logs de divisão do Apache

1

Eu tenho um log de um site ocupado que cresce muito rápido. Gostaria de saber se há uma maneira de "dividir" o arquivo de log todos os dias sem usar ferramentas externas.

EDIT: My Fault, estou em um servidor Windows 2003, Apache versão 2.0.64.

    
por IssamTP 09.12.2010 / 17:21

2 respostas

0

O Apache httpd é capaz de gravar erros e acessar arquivos de log por meio de um pipe para outro processo, em vez de diretamente para um arquivo. Esse recurso aumenta drasticamente a flexibilidade de registro, sem adicionar código ao servidor principal. Para gravar logs em um pipe, simplesmente substitua o nome do arquivo pelo caractere "|", seguido pelo nome do executável que deve aceitar entradas de log em sua entrada padrão.

Você pode usar essa técnica para canalizar os logs para um script que, em seguida, divide os logs da maneira que desejar. Isso geralmente é usado para dividir por host virtual.

    
por 09.12.2010 / 17:34
3

Você pode usar o logrotate para manter seus arquivos de log pequenos e também compactá-los.

Por exemplo, você pode usar algo como:

/var/log/apache/*.log {
      daily
      rotate 5
      size 100M
      compress
      postrotate
         /usr/bin/killall -HUP apache
      endscript
 }

Isso manterá cinco arquivos girados. Os logs serão girados diariamente e comprimidos. Para mais informações, consulte man logrotate .

    
por 09.12.2010 / 17:25