Apagar arquivos vazios com logrotate

2

Estou usando logrotate para compactar o log diariamente e também excluo os arquivos de log compactados com mais de 30 dias. Então aqui está o meu script logrotate: -

/var/www/html/application/logs/*.php
{
    daily
    missingok
    rotate 0
    maxage 30
    compress
    notifempty   
    dateext
}

Estou criando arquivos separados para registrar o erro do PHP em cada dia. Isso significa que um arquivo de log será criado no início de cada dia para armazenar o log do PHP do mesmo.

Aqui estão os detalhes do diretório: -

 -rw-rw-rw- 1 root   root       0 Dec 17  2015 log-2015-12-16.php
 -rw-rw-rw- 1 root   root     243 Dec 17  2015 log-2015-12-16.php-20151217.gz
 -rw-rw-rw- 1 root   root       0 Dec 18  2015 log-2015-12-17.php
 -rw-rw-rw- 1 root   root     243 Dec 18  2015 log-2015-12-17.php-20151218.gz
 -rw-rw-rw- 1 root   root       0 Dec 19  2015 log-2015-12-18.php

 -----
 -----

 -rw-r--r-- 1 root   root    1410 Aug 17 03:14 log-2016-08-16.php-20160817.gz
 -rw-r--r-- 1 root   root       0 Aug 18 04:21 log-2016-08-17.php
 -rw-r--r-- 1 root   root    1404 Aug 18 04:21 log-2016-08-17.php-20160818.gz
 -rw-r--r-- 1 root   root       0 Aug 19 04:28 log-2016-08-18.php
 -rw-r--r-- 1 root   root    1390 Aug 19 04:28 log-2016-08-18.php-20160819.gz
 -rw-r--r-- 1 root   root       0 Aug 20 03:34 log-2016-08-19.php
 -rw-r--r-- 1 root   root    1446 Aug 20 03:34 log-2016-08-19.php-20160820.gz
 -rw-r--r-- 1 root   root       0 Aug 21 03:37 log-2016-08-20.php
 -rw-r--r-- 1 root   root    1329 Aug 21 03:37 log-2016-08-20.php-20160821.gz
 -rw-r--r-- 1 root   root       0 Aug 22 03:27 log-2016-08-21.php
 -rw-r--r-- 1 root   root    1358 Aug 22 03:27 log-2016-08-21.php-20160822.gz
 -rw-r--r-- 1 root   root       0 Aug 23 03:37 log-2016-08-22.php
 -rw-r--r-- 1 root   root    1400 Aug 23 03:37 log-2016-08-22.php-20160823.gz
 -rw-r--r-- 1 root   root       0 Aug 24 03:27 log-2016-08-23.php
 -rw-r--r-- 1 root   root    1369 Aug 24 03:27 log-2016-08-23.php-20160824.gz
 -rw-r--r-- 1 root   root       0 Aug 25 03:24 log-2016-08-24.php
 -rw-r--r-- 1 root   root    1335 Aug 25 03:24 log-2016-08-24.php-20160825.gz
 -rw-r--r-- 1 root   root   27399 Aug 25 23:01 log-2016-08-25.php
 -rw-r--r-- 1 root   root    3426 Aug 26 02:06 log-2016-08-26.php

Por favor, note que temos arquivos php vazios também, que devem ser deletados depois de criar o próprio arquivo de compactação e na próxima rotação, se algum comprimir arquivos com mais de 30 dias, ele também deve ser deletado.

Não consigo encontrar o erro neste script de logrotate. Você pode, por favor, dar uma solução para o que eu estou perdendo ou fazendo errado?

    
por Deepak Dixit 26.08.2016 / 09:28

1 resposta

2

Criado um arquivo "apache" em /etc/logrotate.d /

/usr/local/apache/logs/*log {
 daily
 rotate 52
 compress
 missingok
 notifempty
 sharedscripts
 postrotate
        /usr/local/apache/bin/apachectl restart > /dev/null 2>/dev/null || true
 endscript
}
    
por 26.08.2016 / 11:31