Ce guide s’applique à Laravel 10 ou 11 et à PHP 8.1 ou plus. Il faut disposer d’un compte live24h, d’un Workspace et d’une clé API avec droits d’écriture – voir les étapes communes .
Installer
Le package est un package Composer avec auto-discovery – le ServiceProvider est intégré automatiquement :
composer require live24h/laravel-adapter
php artisan vendor:publish --provider="Live24h\LaravelAdapter\LaravelServiceProvider"
La seconde commande publie la configuration config/live24h.php. Renseignez-y api_key et api_base_url (par défaut https://api.live24h.eu) – ou saisissez la clé plus tard sur la page des paramètres. Le package est obtenu en téléchargement direct depuis live24h ; un référencement sur marketplace suivra.
Pas à pas
Le package fournit un groupe de routes protégé par authentification (middleware: web, auth) : le Health Center sous /live24h/health, une page de paramètres et l’assistant de configuration. Le déroulement illustré est présenté dans l’aperçu
; les étapes pour Laravel sont :
- Ouvrez
/live24h/healthen tant qu’utilisateur connecté. - Vérifiez la connexion sur la page des paramètres (« test de connexion »). La clé API est toujours affichée masquée.
- Lancez l’analyse de l’application.
- Examinez le Website Health Score et les recommandations.
- Sélectionnez les checks – les suggestions verrouillées restent visibles et sont marquées « À partir de Pro ».
- Créez les checks en un clic.
Le scan couvre quatre domaines : SEO (robots.txt, Sitemap), SSL/domaine/DNS (certificat TLS, domaine apex), délivrabilité des e-mails (MX, SPF, DKIM, DMARC du domaine expéditeur issu de la configuration MAIL_*) et traitement en arrière-plan (Scheduler schedule:run et Queue Worker en tant que Heartbeat).
Presets de politique pour les déploiements
Pour plusieurs applications, il existe trois préréglages qui déterminent l’étendue des checks créés :
- essential – uniquement les checks les plus importants (disponibilité, SSL).
- recommended – le standard, y compris SEO, domaine et DNS e-mail.
- all – en plus, les Heartbeats du Scheduler et de la Queue.
Vous appliquez ainsi le même standard de monitoring de façon reproductible dans chaque projet Laravel.
Dépannage et conseils
La route /live24h/health est inaccessible.
Le groupe de routes utilise les middlewares web et auth – vous devez donc être connecté. Vérifiez en outre que la configuration a été publiée (php artisan vendor:publish) et videz au besoin le cache avec php artisan config:clear et php artisan route:clear.
Le « test de connexion » échoue.
Vérifiez l’api_key (droits d’écriture requis), l’api_base_url (https://api.live24h.eu) et la possibilité pour le serveur d’établir des connexions sortantes.
Le mauvais domaine e-mail, ou aucun, est vérifié.
Le domaine expéditeur est déduit de la configuration MAIL_*. Définissez correctement MAIL_FROM_ADDRESS pour que MX, SPF, DKIM et DMARC du bon domaine soient vérifiés.
Un check Heartbeat reste sur « En attente ». C’est normal et ce n’est pas une erreur : un Heartbeat attend le premier signal du processus surveillé (le ping vers l’URL du Heartbeat). Tant que l’exécution du Scheduler ou le Queue Worker ne s’est pas manifesté, le check reste sur « En attente » – pas sur « Panne ». Au premier passage, le statut bascule sur « Opérationnel ».
Le Heartbeat du Scheduler ne se manifeste pas.
Assurez-vous que php artisan schedule:run est bien exécuté chaque minute via le Cron et que le Queue Worker (php artisan queue:work) tourne. Sans processus en cours, le Heartbeat correspondant reste sur « En attente ».
Questions fréquentes
Dois-je saisir les routes à la main ? Non. Le scan déduit les checks pertinents de l’application – SEO, SSL/domaine, DNS e-mail ainsi que les Heartbeats Scheduler et Queue. Vous n’avez plus qu’à sélectionner et créer en un clic.
Quelque chose est-il mesuré ou stocké dans mon application ? Le package scanne en lecture seule et crée les checks. Les vérifications 24/7 en continu sont ensuite assurées par la plateforme live24h – le package lui-même n’est pas un moteur de monitoring.
Convient-il à plusieurs applications ?
Oui. Avec les presets de politique essential, recommended et all, le même standard de monitoring se déploie de façon reproductible sur toutes les applications Laravel.