Error Log

En esta entrada voy a hablar de “error_log” la opción para almacenar información tales como variables para depurar, guardar errores, comprobar resultados o queries … en PHP.

Uso básico de error_log

Normalmente, durante el desarrollo, uno siempre necesita para “debuggear”.

Esto es ir almacenando variables en un log para ir comprobando el estado del sistema, o también para comprobar o dejar rastro de por dónde va pasando la aplicación en desarrollo.

Para almacenar algo en el log usando PHP, se hace de una manera muy simple, usando la función de PHP “error_log“.

A continuación vamos a explicar el código.

‘$var’ es una variable con lo que queremos salvar en el log, entraré más en profundidad más adelante, para salvar objetos complejos y algunas situaciones excepcionales.

$path es la ruta o path del fichero donde vamos a almacenar $var.

Finalmente, llamando a “error_log($var, 3, $path);” se nos salvará $var en nuestro fichero.

NOTA:

Usamos ‘3’ por defecto para indicarle a la función de “error_log” que el destino es un fichero de texto.

Puedes encontrar más información de error_log en la página oficial de error_log en PHP.net.

Usando error_log para guardar objetos de forma legible

Pero el código anterior, solo nos sirve para almacenar tipos simples.

La mayoría de las veces puede no sernos del todo útil.

Pero por defecto no se guardará de una manera legible al usuario, por lo que necesitamos adaptar un poco el uso que hacemos de error_log.

Para ello, vamos a hacer uso de “print_r” para poder almacenar así, de forma fácil de leer y de entender para el usuario, cualquier tipo de objeto o array.

Un ejemplo usando el siguiente código en PHP:

Usando el código de arriba, tendremos en nuestro fichero de log un resultado como en la imagen siguiente.

error_log - salida de un objeto en fichero de log

En caso de no usar “print_r” no se guardaría nada en el fichero de log.

Usando “print_r” con el objecto a almacenar y el “prettify” marcado a true, esto nos devolverá un string del objeto de una manera fácil de leer y comprender para usuarios. Algo muy útil, sobre todo durante el desarrollo de una aplicación.

Más información de “print_r” en la página oficial de PHP sobre la función print_r.

Creando una función personalizada de error_log

Durante el desarrollo es normal usar muchas veces las llamadas a funciones de log.

Una manera de encapsular y simplificar el código es realizar una función para ello, lo cual será más fácil de recordar y de usar, también evitaremos repetir código en distintos sitios y tendremos un código usable, reutilizable, más limpio y elegante.

Un ejemplo podría ser el siguiente.

Como se puede ver, he personalizado una función y he añadido algunos ejemplos de uso.

Por defecto, después de guardar los datos he añadido un salto de línea. Así la siguiente vez que se ejecute la función aparecerá en una nueva línea.

Enlaces de interes

http://php.net/manual/es/function.error-log.php

http://php.net/manual/es/function.print-r.php

Otras entradas similares

Juan Ramón González Morales
Follow Me

Juan Ramón González Morales

UX Designer at #JRGONZALEZ.ES
Creando soluciones informáticas a tus problemas.
Soy un blogger con mucha ilusión por las nuevas tecnologías y por compartir y absorber nuevos conocimientos.
UX Designer - Software Engineer.
Juan Ramón González Morales
Follow Me

Latest posts by Juan Ramón González Morales (see all)

2 Responses to “Error Log”

¿Y tú qué opinas?

Antes de participar en los comentarios, ten en cuenta que leeré personalmente cualquier cosa que escribas. Así que, por favor, mantén las formas y compórtate como una persona de bien.

  • (will not be published)

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">