Logs et debug : fonctions utiles

Publié le 1 mars 2022

Pour aider à corriger une erreur dans un script, ou pour suivre des événements sur un site, il est utile d’enregistrer des logs personnalisés.

Voici un exemple qui vous permet de générer des logs personnalisés :

/**
* @param $message
* @param $new_line
*/
function set_logs( $message = "", $new_line = false ) {
$file = "/logs/logs-" . date( 'Y-m-d' ) . ".log";
$separator = "";

if ( true === $new_line ) {
$separator = "\n";
}

$content = $separator . date( 'd.m.Y H:i:s' ) . " [" . $_SERVER["REMOTE_ADDR"] . "] : " . $message . "\n";
error_log( $content, 3, $file );
}

Exemple d’utilisation :

set_logs( "Lancement de la mise à jour des produits", true ); 
set_logs( "Les produits ont été correctement mis à jour" );
set_logs( "Le stock a été correctement mis à jour" );
set_logs( "Lancement de la mise à jour des images", true );
set_logs( "1 erreur a eu lieu sur l'image 1245 et 7896" );

Rendu, dans le fichier /logs/logs-2022-02-08.log :

08.02.2022 10:50:18 [00.00.00.00] : Lancement de la mise à jour des produits
08.02.2022 10:50:18 [00.00.00.00] : Les produits ont été correctement mis à jour
08.02.2022 10:50:18 [00.00.00.00] : Le stock a été correctement mis à jour

08.02.2022 10:50:18 [00.00.00.00] : Lancement de la mise à jour des images
08.02.2022 10:50:18 [00.00.00.00] : 1 erreur a eu lieu sur l'image 1245 et 7896

Pour suivre un type d’événement particulier, vous pouvez créer des fichiers de logs différents. Vous pouvez également activer l’enregistrement des logs seulement lorsque vous êtes dans votre environnement de développement.

define('ENV', 'PROD') ; // PROD OU DEV

/**
* @param $message
* @param $new_line
*/
function set_logs( $message = "", $new_line = false ) {
if (defined('ENV') && ENV != "DEV" ) {
return ;
}

// La suite du code...
}
Si l'article vous a aidé, vous pouvez m'offrir un café !

A lire ensuite

Cela pourrait vous intéresser

Quelques contenus proches du sujet pour prolonger la lecture.

13 mai 2025 Fonctions & snippets

PHP : Calculer un écart type

Tout est parti d’une demande d’un client : il voulait analyser les résultats d’un questionnaire de satisfaction et m’a parlé de “calculer un écart…

Lire la suite

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Un café pour le blog ? Vous aimez ce que vous lisez ici ? Offrez-moi un café.