Abdussamad.com

CentOSLotes de demónios a correr no CentOS Linux criam os seus próprios ficheiros de registo. Estes ficheiros de registo contêm mensagens úteis relacionadas com o funcionamento desses demónios. Por exemplo, mensagens de erro que ajudam no diagnóstico de problemas com o sistema. Ao longo do tempo, estes ficheiros de registo têm de ser rodados para que sejam mais fáceis de gerir. A rotação de registo é o processo de divisão de grandes ficheiros de registo e de arquivamento de ficheiros de registo antigos para referência futura. No CentOS, um programa chamado logrotate é responsável pela rotação dos ficheiros de registo. Neste post, vejo como personalizar o funcionamento do logrotate.

Executar logrotate

logrotate é executado diariamente pelo cron através do ficheiro /etc/cron.daily/logrotate. No CentOS 5.x cron é responsável pela execução de trabalhos de cron do sistema como logrotate. Pode ser configurado editando /etc/crontab.

In CentOS 6.x anacron é instalado por defeito e é responsável pela execução de trabalhos de cron do sistema.

logrotate.conf

logrotate.conf está localizado em /etc/ e detém a configuração padrão do sistema para logrotate. Por defeito no logrotate CentOS irá rodar os logs semanalmente e manter 4 semanas de atrasos. Pode personalizar logrotate.conf mas é normalmente melhor personalizar a configuração individual de rotação de log em /etc/logrotate.d/

/etc/logrotate.d/

Este directório contém ficheiros de rotação de log para diferentes serviços em execução no sistema.

Um ficheiro típico neste directório é este para o Apache ( /etc/logrotate.d/httpd ):

/var/log/httpd/*log { missingok notifempty sharedscripts postrotate /sbin/service httpd reload > /dev/null 2> /dev/null ||| true endscript}

br>

A primeira linha é uma expressão regular que corresponde aos ficheiros de registo. Neste caso, todos os ficheiros terminando em “log” e residindo no directório /var/log/httpd.

Então, dentro das chaves de abertura e fecho tem as opções de rotação de log para os ficheiros deste daemon. No caso acima referido tem a rotação mensal configurada.

Opções para logrotate

algumas das opções que pode incluir no ficheiro logrotate.conf ou nos ficheiros de rotação de log individuais do daemon em /etc/logrotate.d/ são :

  • rotate: Especifique o número de registos de retorno para continuar a utilizar a opção rotate. Por exemplo, “rotate 5” manterá 5 ficheiros de registo antigos.
  • compress: Comprimirá os ficheiros de registo antigos para poupar espaço em disco.
  • diário, semanal, mensal ou anual: Rodar os registos após o período especificado ter passado.
  • tamanho: Especificar o tamanho do ficheiro de registo para activar a rotação. Por exemplo “tamanho 50M” irá rodar o ficheiro de registo se este tiver 50MB ou mais de tamanho. Pode usar o prefixo M para megabytes, k para kilobytes e G para gigabytes. Se não for utilizado nenhum prefixo, será considerado bytes.
  • minsize: Isto é como o tamanho, excepto que também tem em conta o período (mensal, semanal, etc.). Assim, só rodará os ficheiros de registo se o período for alcançado E os ficheiros de registo forem maiores do que o tamanho mínimo especificado.
  • prerotate e postrotate: Estes especificam comandos que podem ser executados antes e depois da rotação dos ficheiros de registo. Por exemplo, reiniciar o daemon após a rotação de log.

Para a lista completa de opções disponíveis ver o ficheiro man logrotate.conf ( man logrotate.conf em CentOS ).

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *