Consideracionesimportantes acerca de los logs de MySQL


-- Descargar Consideracionesimportantes acerca de los logs de MySQL como PDF --


mysql

Normalmente, mysql consta de 2 logs importantes que no debiéramos ignorar. Cada uno tiene su importancia y se deben tratar de distinta manera:

 Error log:

El objetivo de este log es el de guardar un historial de los sucesos e inconvenientes del servidor. Normalmente no se le da la importancia que merece. En este punto algo a resaltar, es que hay que configurar correctamente la rotación y archivado de los mismos.

Una situación muy común es la de perder logs de vista sin darse cuenta. Un sysadmin perezoso o con poca experiencia podría caer en la costumbre de setear la rotación de logs de tal maera que, al alcanzar un cierto tamaño, el log es renombrado a .old y un log nuevo es creado, Si por alguna razón, se generan muchos errores, puede que antes de que llegues a dar una mirada al log .old, este sea pisado por un nuevo «backup». Esto también podría pasar si tienes programada una rotación de logs diaria y no llegas a ver el log a tiempo antes de la próxima.

Otro caso a considerar es aquel en que el sysadmin deja a mysql configurado para que registre sus logs directamente a /var/syslog, lo cuál hace bastante más difícil(sino imposible)a cualquiera, el identificar problemas específicos de mysql. Más aún, muy pronto te encontrarás con una pila de syslog.x.gz con lo cual perderás más tiempo aún buscando algo en particular.

 Slow query log:

Este es un caso totalmente distinto.Se trata de un log para el cuál te conviene tener configurado un esquema diario de rotación. Además es recomentable analizar el log para obtener un top de las slow queries cada día(lo que te da datos acerca de la carga generada y el impacto de mejoras y updates); mucho mejor aún si analizas también y procesas estadísticas de los últimos 7 días.

 Tip Extra:

Supongamos que tenemos un sistema de monitoreo revisando ellog de mysql, para alertarnos en caso que aparezcan errores. Si esto sucede, en algunos casos podríamos necesitar rápidamente limpiar el log, de manera de poder saber si el problema persiste y a la vez no seguir generando alertas si ya estamos investigando la causa.(Podemos investigar el log luego, o bien enviarlo a un colega para que se encargue). Con el siguiente script uno copia el log actual a un archivo nuevo agregándole la fecha al nombre del mismo, para finalmente vaciar el log corriente y así permitir que mysql siga escribiendo en él:

cp /var/log/mysqld.log /var/log/mysqld.log-`date +%F-%s` ; echo > /var/log/mysqld.log ;  mysqladmin flush-logs

Deja un comentario

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