Symfony
Bundle für Symfony 6.4+
Das offizielle DockRay-Bundle integriert Symfony-Anwendungen mit der Monitoring-Plattform und ermöglicht die automatische Meldung von Ausnahmen sowie das Monitoring der Verarbeitungszeit von HTTP-Anfragen. Ereignisse werden zusammen mit den für eine schnelle Problemdiagnose erforderlichen Informationen direkt an das DockRay-Dashboard übermittelt.
Monitoring von Fehlern und Ausnahmen
DockRay integriert sich in das Exception-Handling von Symfony und ermöglicht die automatische Übermittlung von Anwendungsfehlern an ein zentrales Monitoring-Dashboard.
Gemeldete Ereignisse können unter anderem folgende Informationen enthalten:
- Typ und Beschreibung der Ausnahme,
- Ort des Auftretens und Stack Trace,
- Informationen über die Umgebung und Anwendungsversion,
- Kontext der verarbeiteten Anfrage.
Ausgewählte Exception-Klassen können von der Meldung ausgeschlossen werden.
Performance-Monitoring
Das Bundle kann die Verarbeitungszeit von HTTP-Anfragen überwachen. Transaktionen werden anhand des Routenmusters gruppiert, sodass Anfragen an dieselbe Route unabhängig von den übergebenen IDs gemeinsam analysiert werden können.
Die Häufigkeit der Erfassung von Transaktionsdaten kann über eine Sampling-Rate gesteuert werden.
Benutzerkontext und Datenschutz
DockRay kann optional Informationen über den angemeldeten Benutzer in gemeldete Ereignisse aufnehmen, beispielsweise ID, E-Mail-Adresse und Name. Die Übermittlung der IP-Adresse und des User-Agents kann separat gesteuert werden.
Konsolenbefehle
Fehler, die bei der Ausführung von Symfony-Konsolenbefehlen auftreten, können ebenfalls an DockRay gemeldet werden. Da diese außerhalb des HTTP-Request-Lebenszyklus ausgeführt werden, erzeugen sie keine HTTP-Transaktionen.
Sichere Fehlerübermittlung
Die Reporting-Methoden von DockRay lösen keine Ausnahmen aus. Dadurch beeinträchtigen vorübergehende Ausfälle der Monitoring-Plattform nicht die standardmäßige Fehlerbehandlung Ihrer Anwendung.
Installation
Installation des Pakets
Installieren Sie DockRay mit Composer:
composer require dockcodes/dock-ray-symfony
Wenn Ihr Projekt Symfony Flex verwendet, wird das Bundle automatisch registriert.
Bei einem Projekt ohne Symfony Flex registrieren Sie das Bundle manuell in der Datei config/bundles.php:
<?php
return [
// ...
Dock\Ray\Symfony\RayBundle::class => ['all' => true],
];
Konfiguration
Erstellen oder ergänzen Sie die Datei config/packages/ray.yaml:
ray:
token: '%env(RAY_TOKEN)%'
private_key: '%env(RAY_PRIVATE_KEY)%'
traces_sample_rate: 0.2
ignore_exceptions:
- Symfony\Component\HttpKernel\Exception\NotFoundHttpException
Fügen Sie anschließend den Projekt-Token und den privaten Schlüssel zur Datei .env hinzu:
RAY_TOKEN=project-token
RAY_PRIVATE_KEY=project-private-key
Den Projekt-Token und den privaten Schlüssel finden Sie im DockRay-Dashboard. Wenn RAY_TOKEN und RAY_PRIVATE_KEY nicht gesetzt sind, wird das Bundle zwar geladen, sendet jedoch keine Daten.