Download the PHP package elmijo/php-error-log without Composer
On this page you can find all versions of the php package elmijo/php-error-log. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package php-error-log
PHP Error Log
Una pequeña libreria para manejar los logs de tu aplicación de forma simple.. rapida.. y directa!!. En lineas lo que se hizo fue crear una capa de abstracción entre el programador y la función error_log() de PHP.
Entonces.. ¿Que tiene de especial?
- La gran ventaja es que puedes escribir logs de las tres formas posibles usando error_log() con una sola función solo cambiando los parametros.
- SIEMPRE!! va ha escribir el log, a menos que el mensaje sea empty.
Guia Rapida
Instalación
Lo podemos hacer a travéz de composer:
Uso Rapido
¿Cuantas maneras de escribir logs tengo disponibles?
erro_log te permite escribir o manejar los logs de tres maneras, como lo son: en el archivo error.log por defecto, enviandola por correo electronico o escribiendo los en un archivo definido por el usuario
Conociendo a la función magica..
Esta libreria esta compuesta por una unica clase, la cual contiene un metodo pulic static llamado write, el cual nos sirve para manejar los logs en cualquiera de las formas posibles.
- Descripción: Función para escribir logs
- Parametros:
- message: string (requerida) Cadena de texto con el mensaje.
- type: integer (opcional,default 3) Nivel del error con el que queremos etiquetar el log, acepta valores del 0 - 7.
- destination: string (opcional) puede ser una lista de correos electronicos o un path absoluto del archivo donde queremos que se escriban los logs.
- headers: array (opcional) Arreglo asociativo con las cabeceras adicionales que deseamos agregar al correo electronico, este parametro solo tendra valides si vamos a enviar el log por email.
- Return : TRUE si se realizo la operación o FALSE en caso contrario.
Nivel del error
La clase provee al desarrollador de 8 constantes para facilitar el uso de este parametro
constatnte | valor | texto |
---|---|---|
PEL_EMERGENCY | 0 | emergency |
PEL_ALERT | 1 | alert |
PEL_CRITICAL | 2 | critical |
PEL_ERROR | 3 | error |
PEL_WARNING | 4 | warning |
PEL_NOTICE | 5 | notice |
PEL_INFO | 6 | info |
PEL_DEBUG | 7 | debug |
Cabeceras Adicionales(SMTP)
error_log() utiliza la funcion mail() cuando se pasa un email como destinatario del log, eso quiere decir que las mismas cabeceras que podemos definir en mail() al momento de enviar un correo las vamos a poder definir el la función error_log(). Sin embargo, PHPLorError solo soportara una pequeña lista de cabeceras y aqui se la presentamos:
- From: Es el mas IMPORTANTE de todos!!, ya que sin el NO SE ENVIARA EL CORREO.
- Subject: Asunto del correo.
- Reply-To: Correo al cual ira la respuesta del usuario.
- Content-type: el tipo de contenido por defecto es text/plain charset=iso-8859-1.
- Cc: Enviar una copia a otro correo.
- Bcc: Enviar una copia oculta a otro correo.
- Return-Path: correo al cual van a llegar los errores de envio.
NOTA: La cabecera To es agregada automaticamente por PHPErrorLog y cualquier otra cabecera que se pase sera eliminada.
Enviando Logs al archivo por defecto
Enviando Logs por Email
Para poder enviar email es necesario que tengamos instalado y configurado un servidor de correo en nuestra maquina o en la maquina donde se ejecutara nuestra aplicación, si utilizan LINUX :+1: les recomiendo este link
Email con contenido HTML
Enviando Logs a un Archivo Definifo por el Usuario
Posibles impedimentos paraescribir el log
- El mensaje es empty
- No se agrego la cabecera From en caso de que se desee enviar por correo
- Que no se tengan permisos de escritura en caso d eque el usuario defina el log, sin embargo el log se va a escribir en el archvio default
El tema de los permisos
En caso de que definamos el archivo log, tenemos que asignarle a apache como dueño del mismo o darle permisos de escritura
- opción 1: sudo chown www-data:www-data /ruta/absoluta/del/dev.log
- opción 2: sudo chmod 0766 /ruta/absoluta/del/dev.log