Como a página de manual não responde à minha pergunta e não quero forçar um ciclo de rotação, decidi fazer a pergunta aqui.
A página do manual para logrotate fornece o seguinte exemplo:
"/var/log/httpd/access.log" /var/log/httpd/error.log {
rotate 5
mail [email protected]
size 100k
sharedscripts
postrotate
/usr/bin/killall -HUP httpd
endscript
}
Todos os exemplos com curingas contêm apenas uma única entrada. Agora, o que me interessa é se este também é permitido:
/var/log/httpd/*.log /var/log/httpd/*/*.log {
# ... same as above
}
Aqui está o raciocínio: tenho vários fantasmas e os divido pelo usuário que "possui" esses fantasmas. Como os arquivos de log são legíveis por todo o mundo, desejo montar uma pasta no diretório inicial do usuário, mas limitá-la aos arquivos de log que o usuário "possui", o que é mais fácil de obter ao separar os logs em pastas (e vincular montagem requer esse esquema de qualquer maneira). Portanto, estou procurando uma solução para girar os arquivos de log /var/log/httpd
e todos os arquivos de subdiretórios desse diretório - sem precisar listar todos os subdiretórios por nome.
Em geral, a página de manual não dá idéia se várias entradas são possíveis para regras de curinga ou apenas para caminhos completos. Estou usando o logrotate versão 3.7.8-6, que vem com o Debian "Squeeze", mas acho que isso não é necessariamente específico para uma versão de distro ou programa.
Eu só queria esclarecer, porque é isso que eu vim aqui procurando fazer,
É permitido especificar vários arquivos de log para uma única configuração, por exemplo
fonte
Na página do manual para logrotate :
Lembre-se de modificar ou remover aspas ao passar de um para vários padrões:
Isso funciona:
isso funciona também:
Isso não funciona:
e nem isso:
Compare com o estojo de padrão único.
Isso funciona:
e isso também funciona:
Testado com logrotate 3.10.0
fonte
"/var/space /log/*.log" "/var/log/*.blog"