Anuncios

Bienvenidos sean a este post, hoy hablaremos sobre el log de error.

Anuncios
Anuncios

Si recuerdan en este post vimos que son los logs y nombramos algunos de los disponibles en el servidor, hoy nos centraremos en el encargado de los errores que ocurren en el mismo, ya sea desde problemas con el servicio o daemon del mariadb hasta de malas ejecuciones en las tablas, este log puede ser activado o desactivado dependiendo de las necesidades dado que tal como mencionamos en posts anteriores puede traer problemas de performance, como mencionamos en este post los logs consisten en archivos de textos y este en particular se encuentra ubicado de manera predeterminada en el directorio donde estan los datos, su nombre predeterminado es el nombre del host con la extension .err, aunque usar este nombre en un entorno de replicacion no sea una buena idea y prefiera unificar la identificacion de los logs bajo un mismo nombre en lugar de tener uno por cada host.

Anuncios

En Windows este log esta activado de manera predeterminada, para desactivarlo y mostrar los errores en pantalla usaremos la opcion:

--console 
Anuncios

Pero esta dejara de funcionara con la opcion:

 --log-error
Anuncios

Dado que volvera a activar el log en archivos, en cambio en sistemas de tipo Unix o Linux este log esta desactivado de manera predeterminada, para este caso los errores se mandan a stderr a menos que la salida se redirija a otro archivo, aunque en todos los sistemas si queremos activarlo debemos usar la opcion:

--log-error 
Anuncios

Si queres redireccionarlo a otro archivo usaremos:

--log-error=<archivo>
Anuncios
Anuncios

En este ultimo caso si especificamos unicamente el archivo sin un path completo se almacenara en el directorio de datos, si se usa esta opcion tanto el nombre del archivo como el path podran ser leidos desde la variable log_error que es de solo lectura, como mencionamos anteriormente si usamos la opcion –console desactivaremos el log en Windows pero en Unix no podemos hacer esto, es decir que si un archivo de configuracion utilizado por multiples servidores tiene activado el log, un servidor de estos no podra desactivarlo pero existe un truco, para ello debemos apuntar el log al archivo /dev/null y esto ocasionara que todo lo escrito vaya hacia la nada misma.

Anuncios

El formato de un archivo log al igual que todos los logs consisten en registrar linea por linea todos los eventos que se consideren erroneos, en el unico caso donde no se escribe es cuando inicia el servidor que agrega una linea en blanco despues de la ultima linea del log para indicar que comenzo una nueva ejecucion, veamos un ejemplo de una linea:

131231 17:17:38 [ERROR] Event Scheduler: [root@localhost][dataset1.populate_t01] Table 'dataset1.t01' doesn't exist
Anuncios
Anuncios

Como pueden ver nos pasa ciertos datos interesantes, como son la fecha y hora de ocurrido el evento, luego tenemos el nivel del mismo (Error, Warning, Note) despues quien genera el error, seguido del usuario que lo genero, cual es el tipo de error y por ultimo una descripcion, este es un simple ejemplo de como es una linea de un error en el log pero no siempre esta sujeto a esta estructura ni tampoco el tipo de informacion devuelta pero ciertos parametros si se mantendran en comun para otro tipo de notificaciones como son la fecha y hora, el nivel del mismo, el usuario y la base y/o tabla involucrada, por ejemplo esto es un formato mas del tipo de «crash» al inicio pero no es de la tabla del sistema, inclusive en algunos logs de errores se puede incluir un trace de la pila (stack) que nos puede servir para hacer una depuracion en el servidor.

Anuncios

En resumen, hoy hemos visto como es el log de errores, como es su estado predeterminado dependiendo del sistema operativo, como activarlo o desactivarlo, tambien algunas trucos para desactivarlo en Unix y por ultimo una linea de ejemplo, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios
pp258

Donación

Es para mantenimento del sitio, gracias!

$1.50