Laravel est un excellent framework PHP qui fournit un système de journalisation flexible capable d'enregistrer divers événements qui se produisent dans l'application. Cependant, la journalisation à long terme peut rendre les fichiers journaux trop volumineux, occuper de l'espace disque et affecter les performances du serveur. Dans ce cas, nous devons effacer tous les fichiers journaux pour libérer de l'espace disque. Cet article expliquera comment effacer tous les fichiers journaux dans Laravel.
Dans Laravel, tous les fichiers journaux sont enregistrés dans le répertoire storage/logs.
Nous pouvons trouver le chemin du fichier journal à l'aide de la commande suivante :
php artisan config:cache php artisan config:clear php artisan config:cache php artisan config:clear
Le but de ceci est de s'assurer que la configuration de Laravel est correctement chargée.
Ensuite, nous pouvons trouver le chemin du fichier journal en utilisant la commande suivante :
php artisan tinker
Dans Tinker, nous pouvons utiliser la commande suivante pour déterminer le chemin du fichier journal :
use IlluminateSupportFacadesLog; Log::getLogger()->getHandlers()[0]->getUrl();
De cette façon, nous pouvons obtenir le chemin du fichier journal dans Tinker. Copiez et enregistrez le chemin pour une utilisation ultérieure.
Nous pouvons utiliser la commande suivante pour effacer tous les fichiers journaux :
php artisan tinker
Dans Tinker, nous pouvons utiliser la commande suivante pour effacer tous les fichiers journaux :
use IlluminateSupportFacadesFile; File::cleanDirectory('/path/to/logs');
Notez le remplacement de /path/to/logs avec Le chemin d'accès au fichier journal que vous avez enregistré.
Cela effacera tous les fichiers journaux dans Laravel. Si vous souhaitez uniquement effacer les journaux d'une date spécifique, vous pouvez utiliser la syntaxe suivante (par exemple, supprimer les journaux de janvier 2021) :
use IlluminateSupportFacadesFile; File::cleanDirectory('/path/to/logs', 31, '2021-01-');
Remarque : remplacez /path/to/logs par le chemin de votre fichier journal, 31 est arrondi à le week-end Le nombre de jours, 2021-01- est la date du journal que vous souhaitez supprimer.
Effacer manuellement tous les fichiers journaux peut être gênant car vous devez le faire fréquemment. Pour éviter cette situation, nous pouvons configurer une tâche planifiée pour effacer automatiquement les fichiers journaux.
Modifiez le fichier crontab sur le serveur et ajoutez la ligne suivante :
0 0 * * * php /path/to/artisan log:clear > /dev/null 2>&1
Cela effacera automatiquement tous les journaux chaque jour à minuit. Remplacez /path/to/artisan par le chemin de votre fichier artisan.
Dans cet article, nous avons expliqué comment effacer tous les fichiers journaux dans Laravel. Vous pouvez effacer les journaux manuellement ou configurer une tâche planifiée pour effacer les journaux régulièrement. Cela réduira l'utilisation de l'espace disque et améliorera les performances du serveur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!