Introduction
quiet-guard/monitor-php is the framework-agnostic PHP core that every Quiet Guard client is built on. It has no framework dependencies, only PSR interfaces (psr/log) and the ext-sodium / ext-curl extensions, so it can be embedded anywhere PHP runs.
The core is a small set of single-purpose, PSR-based building blocks. Everything is plain PHP under the QuietGuard\Monitor\ namespace, with no service container, no facades and no configuration files:
| Class | Role |
|---|---|
Config | Immutable value object: server URL, project key, timeout, release, environments, trace limit, value-masking patterns. |
Reporter | Sends exception, log and dependency payloads to the ingestion API. Reporting never throws. |
Payload\ExceptionPayloadBuilder | Turns a Throwable into the platform-neutral ingestion payload. |
Support\Scrubber | Redacts sensitive values by key before anything is sent. |
Support\ValueRedactor | Masks values by their shape (emails, IBANs, cards, French social security and phone numbers) wherever they sit. On by default. |
Http\HttpClient (interface) + Http\CurlHttpClient | Pluggable transport; a dependency-free cURL implementation ships in the box. |
ErrorHandler | Registers global PHP error/exception/shutdown handlers for plain-PHP hosts. |
Backup\BackupCipher | Streaming hybrid encryption primitives for the zero-knowledge backup vault. |
The reuse story
This package is the shared foundation, not a standalone product. The Laravel SDK (quiet-guard/laravel-monitor), the Symfony bundle (quiet-guard/monitor-symfony-bundle) and the WordPress plugin (quiet-guard/monitor-wordpress) all depend on it and adapt it to their host: they wire the framework's exception and logging hooks to a Reporter, read configuration into a Config, and reuse the same Scrubber and BackupCipher. Because they all speak the same wire protocol, a mixed PHP fleet lands in a single Quiet Guard dashboard.
If you are integrating Quiet Guard into a custom PHP application or your own framework, this is the package you target directly. The payloads it produces are documented by the ingestion API (/docs/tool/1.0/ingestion-api).
Where to go next
- Installation: requirements and
composer require. - Configuration: the
Configvalue object. - Reporting exceptions: wiring a
Reporterby hand. - Global error handler: capturing errors in a plain-PHP app.
- Scrubbing sensitive data: redacting secrets before sending.
- Backup encryption: the zero-knowledge backup primitives.
You are reading the PHP Core v1.0 documentation.