Niet elke PHP-app draait op Laravel of Symfony. Juist in oudere applicaties gaan dingen stil mis: een warning in de error_log, een witte pagina die niemand meldt. Met de Sentry PHP SDK en errors.nl zie je die fouten direct, met de stacktrace en de request erbij.
1. Maak een project aan
Log in bij errors.nl, maak een organisatie en een project aan en kopieer de DSN. Die ziet eruit als https://<sleutel>@ingest.errors.nl/<project>.
2. Installeer de SDK
composer require sentry/sentry
3. Start hem zo vroeg mogelijk
Zet dit bovenaan je front controller of bootstrap-bestand, direct na de autoloader:
require __DIR__ . '/vendor/autoload.php'; \Sentry\init([ 'dsn' => getenv('SENTRY_DSN'), 'environment' => 'production', 'release' => '[email protected]', 'error_types' => E_ALL & ~E_DEPRECATED & ~E_USER_DEPRECATED, ]);
De SDK registreert zelf een exception- en error-handler. Fatals, exceptions die niemand afvangt en warnings komen vanaf nu binnen. Met error_types laat je deprecations weg, die kosten in oudere code anders veel credits.
4. Zelf een fout melden
Vang je een exception af maar wil je hem wel zien? Stuur hem dan zelf door:
try { $betaling->verwerk(); } catch (\Throwable $e) { \Sentry\captureException($e); return toonFoutpagina(); }
5. Tags en gebruiker
Met tags zoek en filter je later in het dashboard, bijvoorbeeld op klant of op server:
\Sentry\configureScope(function (\Sentry\State\Scope $scope) { $scope->setTag('klant', 'bakkerij-jansen'); $scope->setUser(['id' => $gebruiker->id]); });
Geef bij de gebruiker alleen een id mee. Dan weet je hoeveel mensen een fout zagen, zonder namen of e-mailadressen op te slaan.
6. Geen Composer?
Draait de app op een server waar je geen Composer kunt gebruiken, dan kun je fouten ook rechtstreeks naar onze API sturen met één HTTP-request. Het voorbeeld staat bij je project onder Zonder SDK (HTTP).
Persoonsgegevens
De SDK stuurt standaard geen IP-adressen, cookies of request-body mee. Laat send_default_pii op false staan, tenzij je die echt nodig hebt.
errors.nl filtert daarnaast wachtwoorden, tokens, e-mailadressen en rekeningnummers uit elke fout voordat we die opslaan. Meer daarover lees je in Foutmonitoring en de AVG.
Meldingen
Wil je weten wanneer er iets misgaat zonder het dashboard open te hebben? Zet bij je project een melding per e-mail aan, of koppel Slack, Teams, Discord of ntfy voor pushmeldingen op je telefoon.