Un tutoriel d’utilisation du package opcodesio/log-viewer pour lire et afficher dans le navigateur le contenu (logs) du fichier /storage/logs/laravel.log d’un projet Laravel
Le package Log Viewer d'Opcodes ou opcodesio/log-viewer permet de visualiser facilement et rapidement les fichiers .log du répertoire /storage/logs d'un projet Laravel.
Opcodesio/log-viewer fournit les fonctionnalités suivantes :
Nous voulons voir dans ce tutoriel comment afficher le contenu du fichier storage/logs/laravel.log et d'autres fichiers .log dans le navigateur en utilisant le package Laravel opcodesio/log-viewer.
Au moment de la rédaction de ce post, j'utilise la version 9 de Laravel. Log Viewer requiert Laravel 8+ et PHP 8.0+
Pour installer le package opcodesio/log-viewer, on exécute la commande composer suivante :
composer require opcodesio/log-viewer
Cette commande télécharge (importe) opcodesio/log-viewer dans le répertoire /vendor.
Une fois le package opcodesio/log-viewer téléchargé via composer, nous pouvons visualiser les fichiers /storage/logs/*.log et leurs contenu dans le navigateur en accédant à l'URL /log-viewer
de l'application :
Il suffit ensuite de cliquer sur un fichier .log pour afficher son contenu puis sur un log pour afficher les details.
Le package opcodesio/log-viewer nous offre la possibilité de modifier les paramètres par défaut tels que l'URL /log-viewer
où consulter les logs, utiliser les middlewares pour protéger l'URL /log-viewer
, ...
Pour ce faire, il faut publier le fichier de configuration en exécutant la commande Artisan suivante :
php artisan vendor:publish --tag="log-viewer-config"
Cette commande copie le fichier /vendor/opcodesio/log-viewer/config/log-viewer.php vers /config/log-viewer.php où nous pouvons éditer les paramètres :
<?php
return [
// L'URL où consulter les logs
'route_path' => 'log-viewer',
// L'URL pour retourner vers une autre adresse de l'application
'back_to_system_url' => config('app.url', null),
// Le texte à afficher pour l'URL de retour vers une autre adresse de l'application
'back_to_system_label' => null, // "Back to {{ app.name }}" par défaut
// Les middlewares pour la route "/log-viewer"
'middleware' => ['web'],
// Les types de fichier que Log Viewer peut lire
'include_files' => ['*.log'],
// Les fichiers à exclure
'exclude_files' => [
//'my_secret.log'
],
/*
Si l'utilisateur active le paramètre "Shorter stack traces" dans l’interface web, les logs contenant l'une de ces chaînes seront exclues pour les courts détails
*/
'shorter_stack_trace_excludes' => [
'/vendor/symfony/',
'/vendor/laravel/framework/',
'/vendor/barryvdh/laravel-debugbar/',
],
];
Si nous voulons par exemple protéger l'URL /log-viewer
avec le middleware "auth" (authentification), nous devons l'ajouter au tableau middleware
:
'middleware' => [ 'web', 'auth' ]
Il existe d'autres packages Laravel qui permettent de visualiser les fichiers *.log, notamment :
Portez-vous bien ! 😉
Cette publication vous a plu ?
Partagez-la avec vos ami(e)s sur les réseaux sociaux.
Wilo Ahadi, l'auteur
Passionné de l'informatique, je suis spécialiste en techniques des systèmes et réseaux, développeur web et mobile, infographiste et designer, ... J'aime partager mon expérience en formant sur la plateforme Akili School
Voir profil
Commentaires