Diagnostic systeme
ArtisanCMS fournit un ensemble d’outils de diagnostic pour surveiller l’etat du systeme, verifier les prerequis et diagnostiquer les problemes.
Architecture
Section intitulée « Architecture »Le diagnostic systeme repose sur plusieurs composants :
| Composant | Role |
|---|---|
Admin\SystemController | Interface d’administration du diagnostic |
HealthCheckService | Verification de l’etat des services |
RequirementsChecker | Validation des prerequis techniques |
ErrorRecoveryService | Detection et recuperation apres erreur |
ErrorRecoveryMiddleware | Middleware de detection du mode securise |
Verification de sante
Section intitulée « Verification de sante »Le HealthCheckService effectue une serie de verifications sur les services critiques du CMS :
| Verification | Description |
|---|---|
| Base de donnees | Connexion active et temps de reponse |
| Cache | Driver de cache operationnel (lecture/ecriture) |
| File d’attente | Worker de queue actif et fonctionnel |
| Stockage | Permissions d’ecriture sur les repertoires cles |
| Configuration email valide et serveur joignable |
Chaque verification retourne un statut : ok, warning ou error, accompagne d’un message descriptif.
$health = app(HealthCheckService::class)->runAll();// Retourne un tableau de resultats par serviceVerification des prerequis
Section intitulée « Verification des prerequis »Le RequirementsChecker valide les prerequis techniques de l’environnement :
Version PHP
Section intitulée « Version PHP »Le CMS requiert PHP 8.3 ou superieur. Le checker verifie la version installee et signale toute incompatibilite.
Extensions PHP
Section intitulée « Extensions PHP »Les extensions suivantes sont requises :
- BCMath, Ctype, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML, Zip, GD ou Imagick
Permissions des repertoires
Section intitulée « Permissions des repertoires »Le checker verifie les permissions d’ecriture sur :
storage/et ses sous-repertoiresbootstrap/cache/public/media/
Recuperation d’erreurs
Section intitulée « Recuperation d’erreurs »ErrorRecoveryService
Section intitulée « ErrorRecoveryService »Le ErrorRecoveryService detecte les situations d’erreur critique et propose des actions de recuperation :
- Detection des fichiers de configuration corrompus
- Identification des plugins defaillants
- Verification de l’integrite de la base de donnees
ErrorRecoveryMiddleware
Section intitulée « ErrorRecoveryMiddleware »Le ErrorRecoveryMiddleware intercepte les erreurs fatales et active un mode securise. En mode securise :
- Les plugins sont desactives temporairement
- Le theme par defaut est charge
- Un message d’alerte est affiche dans l’administration
- L’administrateur peut diagnostiquer et corriger le probleme
// Detection du mode securiseif (app('cms.safe_mode')) { // Charger uniquement les composants essentiels}Informations systeme
Section intitulée « Informations systeme »Le SystemController affiche une page recapitulative de l’environnement :
| Information | Exemple |
|---|---|
| Version PHP | 8.3.12 |
| Version Laravel | 11.x |
| Version ArtisanCMS | 1.2.0 |
| Base de donnees | MySQL 8.0.36 |
| Driver de cache | Redis |
| Driver de queue | Database |
| Driver de session | File |
| Espace disque | 12.4 Go disponibles |
| Memoire PHP | 256 Mo (limite) |
Ces informations sont utiles pour le support technique et le diagnostic de problemes.
Gestion du cache
Section intitulée « Gestion du cache »La commande CmsCacheClearCommand permet de vider les differents caches du CMS :
# Vider tous les caches du CMSphp artisan cms:cache-clear
# Vider un cache specifiquephp artisan cms:cache-clear --type=viewsphp artisan cms:cache-clear --type=settingsphp artisan cms:cache-clear --type=routesLes types de cache disponibles :
| Type | Description |
|---|---|
views | Cache des vues Blade compilees |
settings | Cache des parametres du site |
routes | Cache des routes |
config | Cache de la configuration |
pages | Cache des pages rendues |
Un bouton “Vider le cache” est egalement disponible dans l’interface d’administration pour les utilisateurs non techniques.
Visionneuse de logs
Section intitulée « Visionneuse de logs »L’interface d’administration inclut une visionneuse de logs qui permet de consulter les fichiers de log Laravel directement depuis le navigateur :
- Filtrage par niveau de log (debug, info, warning, error, critical)
- Recherche par mot-cle dans les messages
- Affichage des stack traces pour les erreurs
- Telechargement des fichiers de log