¿Cómo registrar errores y advertencias en un archivo en php?

En PHP, los errores y las advertencias se pueden registrar en un archivo usando un script php y cambiando la configuración del archivo php.ini. Dos de estos enfoques se mencionan a continuación:

Enfoque 1: la función error_log() se puede utilizar para enviar mensajes de error a un archivo determinado. El primer argumento de la función es el mensaje de error que se enviará. El segundo argumento dice dónde enviar/registrar el mensaje de error. En este caso, el segundo argumento se establece en 3 y se utiliza para redirigir el mensaje de error a un archivo. El tercer argumento se usa para especificar la ruta del archivo del archivo de registro de errores.

A continuación se muestra la implementación del enfoque anterior:

<?php
// php code for logging error into a given file
  
// error message to be logged
$error_message = "This is an error message!";
  
// path of the log file where errors need to be logged
$log_file = "./my-errors.log";
  
// logging error message to given log file
error_log($error_message, 3, $log_file);
  
?>

Producción:

[20-Dec-2018 17:32:00 UTC] This is an error message!

Enfoque 2:

  • La función init_set() permite a un usuario actualizar mediante programación la configuración del archivo php.ini .
  • El comando ini_set(“log_errors”, TRUE) se puede agregar al script php para habilitar el registro de errores en php.
  • El comando ini_set(‘error_log’, $log_file) se puede agregar al script php para configurar el archivo de registro de errores.
  • Se puede usar una llamada adicional a la función error_log($error_message) para registrar el mensaje de error en el archivo dado.

A continuación se muestra la implementación del enfoque anterior:

<?php
// PHP code for logging error into a given file
  
// error message to be logged
$error_message = "This is an error message!";
  
// path of the log file where errors need to be logged
$log_file = "./my-errors.log";
  
// setting error logging to be active
ini_set("log_errors", TRUE); 
  
// setting the logging file in php.ini
ini_set('error_log', $log_file);
  
// logging the error
error_log($error_message);
  
?>

Producción:

[20-Dec-2018 17:30:35 UTC] This is an error message!

Enfoque similar: las siguientes líneas también se pueden agregar directamente a php.ini para que los cambios de configuración sean permanentes para cada secuencia de comandos php que registra errores y advertencias.

log_errors = on
error_log = ./errors.log

Nota: Este enfoque no es muy fiable en comparación con otros enfoques. Es mejor usar el enfoque 1, ya que brinda flexibilidad para elegir diferentes archivos para iniciar sesión al mismo tiempo sin cambiar la configuración del archivo php.ini .

Publicación traducida automáticamente

Artículo escrito por Harshit Saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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