2016-06-14 4 views
1

로컬 환경에서 laravel 5 용 보초를 해제 할 수있는 방법이 있습니까? 내 .env 파일에서 SENTRY_DSN 항목을 제거했으며 은 작동하지 않는 것 같습니다.하지만 올바른 방법인지는 확실하지 않습니다. report 함수에 env에 대한 몇 가지 검사를 추가해야합니까? 아니면 더 좋은 방법이 있습니까?로컬 환경에서 laravel에 대한 보병 사용 안 함

public function report(Exception $e) 
{ 
    if ($this->shouldReport($e)) { 
     app('sentry')->captureException($e); 
    } 
    parent::report($e); 
} 

답변

0

제안 된 방법은 센트리 SDK의 뭔가 falsey에 SENTRY_DSN 값을 설정하는 것입니다하지 않도록, 그래서 여기에 당신의 직관은 정확 : App\Exceptions\Handler은 다음과 같습니다.

https://docs.getsentry.com/hosted/clientdev/#usage-for-end-users

+0

감사합니다. 당신은 이것을위한 근원이 있습니까? –

+0

제안 된 API 사양에 대한 링크가있는 답변이 –

+0

추가되었습니다. 500을 던지기 시작했습니다. –

2

당신은 보고서 모두 생산에 있는지 확인()와 렌더링 할 수있다() 함수.

여기에 예를 들어 업데이트 된 App\Exceptions\Handler 파일이 있습니다.

public function report(Exception $e) 
{ 
    if (app()->environment('production') && $this->shouldReport($e)) { 
     app('sentry')->captureException($e); 
    } 

    parent::report($e); 
} 

...

public function render($request, Exception $e) 
{ 
    if ($e instanceof ModelNotFoundException) { 
     $e = new NotFoundHttpException($e->getMessage(), $e); 
    } 

    if (app()->environment('production')) { 
     return response()->view('errors.500', null, 500); 
    } 

    return parent::render($request, $e); 
} 

이 방법 당신은 여전히 ​​whoops 지역에 표시 오류 및 생산을위한 사용자 정의 500 에러 페이지가 있습니다.