Abdussamad.com

CentOSMuchos demonios que se ejecutan en CentOS Linux crean sus propios archivos de registro. Estos archivos de registro contienen mensajes útiles relacionados con el funcionamiento de esos demonios. Por ejemplo, mensajes de error que ayudan a diagnosticar problemas con el sistema. Con el tiempo, estos archivos de registro tienen que ser rotados para que sean más fáciles de manejar. La rotación de registros es el proceso de dividir los archivos de registro de gran tamaño y archivar los archivos de registro antiguos para futuras consultas. En CentOS un programa llamado logrotate es responsable de rotar los archivos de registro. En este post veo cómo personalizar el funcionamiento de logrotate.

Ejecutando logrotate

logrotate es ejecutado diariamente por cron a través del archivo /etc/cron.daily/logrotate. En CentOS 5.x cron se encarga de ejecutar las tareas cron del sistema como logrotate. Se puede configurar mediante la edición de /etc/crontab.

En CentOS 6.x anacron se instala por defecto y es responsable de ejecutar los trabajos de cron del sistema.

logrotate.conf

logrotate.conf se encuentra en /etc/ y contiene la configuración por defecto de todo el sistema para logrotate. Por defecto en CentOS logrotate rotará los registros semanalmente y mantendrá 4 semanas de atrasos. Usted puede personalizar logrotate.conf, pero por lo general es mejor personalizar la configuración de rotación de registros del demonio individual en /etc/logrotate.d/

/etc/logrotate.d/

Este directorio contiene archivos de rotación de registros para los diferentes servicios que se ejecutan en el sistema.

Un archivo típico en este directorio es este para Apache ( /etc/logrotate.d/httpd ):

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

La primera línea es una expresión regular que coincide con los archivos de registro. En este caso todos los archivos que terminan en «log» y que residen en el directorio /var/log/httpd.

Luego dentro de las llaves de apertura y cierre tienes las opciones de rotación de logs para los archivos de este demonio. En el caso anterior tienes configurada la rotación mensual.

Opciones para logrotate

Algunas de las opciones que puedes incluir en el archivo logrotate.conf o en los archivos de rotación de logs de cada demonio en /etc/logrotate.d/ son :

  • rotar: Especifique el número de registros atrasados que se mantendrán con la opción rotate. Por ejemplo «rotate 5» mantendrá 5 archivos de registro antiguos.
  • compress: Comprimirá los archivos de registro antiguos para ahorrar espacio en el disco.
  • Diariamente, semanalmente, mensualmente o anualmente: Rota los registros una vez transcurrido el periodo especificado.
  • Tamaño: Especifique el tamaño del archivo de registro para activar la rotación. Por ejemplo, «tamaño 50M» rotará el archivo de registro si tiene un tamaño de 50MB o superior. Se puede utilizar el prefijo M para megabytes, k para kilobytes y G para gigabytes. Si no se utiliza ningún prefijo se tomará para significar bytes.
  • minsize: Esto es como el tamaño, excepto que también tiene en cuenta el período ( mensual, semanal, etc.). Así que sólo rotará los archivos de registro si se alcanza el período Y los archivos de registro son más grandes que el minsize especificado.
  • prerotate y postrotate: Estos especifican los comandos que puede ejecutar antes y después de la rotación del registro. Por ejemplo, reiniciar el demonio después de la rotación de registros.
    • Para la lista completa de opciones disponibles, consulte el archivo man logrotate.conf ( man logrotate.conf en CentOS ).

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *