2016-08-25 7 views
0

Ich habe gerade angefangen, Sentry auf meiner Laravel 5.1-Anwendung zu verwenden.Erfassen von Benutzerinformationen in Sentry

Ich sehe in Docs, und erste Schritte Zeug, einen Verweis auf capturing user information.

Das Beispiel geben sie diese in der Weitergabe, sieht wie folgt aus:

Raven.setUserContext({ 
    email: '[email protected]' 
}); 

Nachdem folgte ihr setup instructions for Laravel, ich sehe keinen Hinweis für wo dies gehen könnte oder eine Referenz in der Dokumentation nach, wie dies einzurichten in einer Konfigurationsdatei oder irgendetwas für Laravel.

Irgendwelche Ideen, wie ich das einrichten könnte, um Benutzerinformationen zu senden? Benutzer werden immer bei der Verwendung meiner Anwendung angemeldet sein.

Antwort

0

Ich weiß, diese Frage ist drei Monate alt, also Entschuldigung, wenn Sie bereits die Antwort gefunden haben.

Ich hatte die gleichen Anforderungen (Benutzer als Teil der Ausnahmen in Sentry anmelden), also habe ich ein wenig graben.

Raven.setUserContext() scheint eine für das JavaScript SDK spezifische Funktion zu sein. Das PHP SDK verfügt über eine set_user_data($id, $email, $data) Methode auf dem Raven-Client, die Sie irgendwo in Ihrer Anwendung verwenden können (höchstwahrscheinlich in Ihrem Ausnahmehandler, bevor Sie die Ausnahme tatsächlich an Sentry senden).

So etwas sollte funktionieren:

public function report(Exception $e) 
{ 
    // Will only enter if statement if request has a user 
    if ($user = request()->user()) { 
     app('sentry')->set_user_data($user->getAuthIdentifier(), $user->email); 
    } 

    app('sentry')->captureException($e); 

    return parent::report($e); 
} 
+0

Dieses wie ein guter Weg sieht, es zu tun. Ich griff auf ein veraltetes Paket zurück und änderte es leicht, da dies die einzige Lösung war, die ich finden konnte. Ich werde es trotzdem versuchen - danke! – James

Verwandte Themen