Logs en Debian y Centos

Los logs en cualquier sistema Linux forman parte fundamental. Un log es básicamente un registro de una acción en un tiempo determinado, existen de diferente tipo, importancia y forma, pero a lo que nosotros nos compete como usuarios, programadores o administradores es saber leer y configurar lo que allí se guarda.

Cuando algún servicio falla en nuestro sistema, por defecto estos se reportaran en el directorio /var/log. Alguno de los archivos que encontraremos allí pueden ser el syslog, mail.log, messages, entre otros.

El encargado de esta tarea es el syslogd, un Daemon/Demonio (un proceso residente que se ejecuta sin la necesidad de interacción de ningún usuario), el cual comparte la tarea con el klogd (el cual toma los mensajes directamente desde el kernel)

Al respecto de la configuración de estos logs en Centos y Debian, tendremos que hablar del rsyslog.conf, que se encuentra como casi todos los archivos de configuración del sistema en el directorio /etc. A su vez, en esta carpeta encontraremos el rsyslog.d, donde encontraremos la configuración de los logs independientes para los programas que lo necesiten y se instalen en nuestro sistema GNU/Linux.

Un detalle muy importante a la hora de configurar un sistema será el mantenimiento de los logs, porque como es muy probable, nuestras aplicaciones generaran millones de datos a lo largo del tiempo, llenando nuestro disco con contenido quizás, irrelevante. Por eso se aplican políticas de rotación de estos archivos, y para ello utilizaremos el /etc/logrotate.conf

logs ubuntu debian

Esta es la configuración predeterminada para todos los logs del sistema, y se puede configurar la rotación de estos archivos de forma por hora, diaria, semanal y mensual, como también guardar una cantidad de rotaciones determinada.

Como sucede con el rsyslog.d, acá también tendremos el logrotate.d, donde podremos guardar distintas configuraciones a las default, para programas determinados.