Como eu digo ao logrotate quais arquivos rodar com o cron?

2

No meu servidor eu tenho este arquivo: /etc/logrotate.d/apache2

Eu sei que é logrotating /var/log/apache2/.log , mas se eu quiser adicionar coisas que estão em /usr/home/www/site1/logs/.log eu apenas duplico tudo abaixo e coloco essa linha lá? Toda vez que eu adiciono um novo site, eu preciso adicionar manualmente linhas a este arquivo?

Ou qual é a maneira mais profissional de fazer isso?

/var/log/apache2/*.log {
    weekly
    missingok
    rotate 52
    compress
    delaycompress
    notifempty
    create 640 root adm
    sharedscripts
    postrotate
        if [ -f "'. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}'" ]; then
            /etc/init.d/apache2 reload > /dev/null
        fi
    endscript
}
    
por cwd 24.06.2011 / 01:10

1 resposta

4

Que tal:

/var/log/apache2/*.log /usr/home/www/*/logs/*.log {
  weekly    
  .
  .
  .
}

Em outras palavras, liste todos os caminhos que você precisa, separados por espaços. O Logrotate irá verificar todos os caminhos. A propósito, você também pode testar sua configuração conforme indicado aqui com a opção de depuração -d :

logrotate -d /path/to/config

Na saída, ele listará todos os arquivos verificados:

considering log /var/log/nginx/access.log
  log does not need rotating
    
por 24.06.2011 / 01:46