2016-08-25 60 views
0

我剛剛在我的Laravel 5.1應用程序中開始使用Sentry。在Sentry中捕獲用戶信息

我看到那裏的文檔和入門的東西,參考capturing user information

他們給在通過本的例子,看起來是這樣的:

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

已經跟着他們setup instructions for Laravel,我看到那裏,這可能去還是沒有提到如何設置此文檔中的任何參考在配置文件或任何Laravel。

有關如何設置此項以發送用戶信息的任何想法?用戶在使用我的應用程序時將始終登錄。

回答

0

我意識到這個問題是三個月大,所以如果你已經找到答案,我很抱歉。

我有相同的要求(日誌用戶作爲哨兵例外的一部分),所以做了一點挖掘我自己。

Raven.setUserContext()似乎是特定於JavaScript SDK的功能。 PHP SDK在Raven客戶端上有一個set_user_data($id, $email, $data)方法,您可以在應用程序的某個地方使用該方法(很可能在您將例外發送給Sentry之前,在您的異常處理程序中)。

像這樣的東西應該工作:

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

這看起來像是在做它的一個好辦法。我使用了一個過時的軟件包並對其稍作修改,因爲這是我能找到的唯一解決方案。我會放棄這一點,不過 - 謝謝! – James