Introduction
quiet-guard/monitor-php est le cœur PHP agnostique sur lequel reposent tous les clients Quiet Guard. Il n'a aucune dépendance framework, uniquement des interfaces PSR (psr/log) et les extensions ext-sodium / ext-curl, et peut donc être embarqué partout où PHP tourne.
Le cœur est un petit ensemble de briques à responsabilité unique, basées sur PSR. Tout est du PHP simple sous l'espace de noms QuietGuard\Monitor\, sans conteneur de services, sans façades et sans fichiers de configuration :
| Classe | Rôle |
|---|---|
Config | Objet de valeur immuable : URL du serveur, clé du projet, timeout, release, environnements, limite de trace, motifs de masquage de valeurs. |
Reporter | Envoie les payloads d'exceptions, de logs et de dépendances à l'API d'ingestion. L'envoi ne lève jamais d'exception. |
Payload\ExceptionPayloadBuilder | Transforme un Throwable en payload d'ingestion neutre. |
Support\Scrubber | Masque les valeurs sensibles par clé avant tout envoi. |
Support\ValueRedactor | Masque les valeurs par leur forme (e-mails, IBAN, cartes, numéros de sécurité sociale et de téléphone français) où qu'elles se trouvent. Actif par défaut. |
Http\HttpClient (interface) + Http\CurlHttpClient | Transport interchangeable ; une implémentation cURL sans dépendance est fournie. |
ErrorHandler | Branche les handlers globaux d'erreurs/exceptions/arrêt de PHP pour les hôtes PHP simples. |
Backup\BackupCipher | Primitives de chiffrement hybride en flux pour le coffre de sauvegarde à connaissance nulle. |
La logique de réutilisation
Ce package est la fondation partagée, pas un produit autonome. Le SDK Laravel (quiet-guard/laravel-monitor), le bundle Symfony (quiet-guard/monitor-symfony-bundle) et le plugin WordPress (quiet-guard/monitor-wordpress) en dépendent tous et l'adaptent à leur hôte : ils branchent les hooks d'exceptions et de logs du framework sur un Reporter, lisent la configuration dans un Config, et réutilisent le même Scrubber et le même BackupCipher. Comme ils parlent tous le même protocole, un parc PHP hétérogène atterrit dans un seul tableau de bord Quiet Guard.
Si vous intégrez Quiet Guard dans une application PHP sur mesure ou votre propre framework, c'est ce package que vous visez directement. Les payloads qu'il produit sont documentés par l'API d'ingestion (/docs/tool/1.0/ingestion-api).
Pour aller plus loin
- Installation: prérequis et
composer require. - Configuration: l'objet de valeur
Config. - Remonter les exceptions: câbler un
Reporterà la main. - Handler d'erreurs global: capturer les erreurs dans une appli PHP simple.
- Masquage des données sensibles: caviarder les secrets avant l'envoi.
- Chiffrement des sauvegardes: les primitives de sauvegarde à connaissance nulle.
Vous lisez la documentation PHP Core v1.0.