2017-09-03 3 views
0

저는 Papertrail이 관리하는 로깅과 함께 Heroku에서 대형 Node.js 응용 프로그램을 사용하고 있습니다. 나는 중앙 오류 처리 및 로깅 기능을 가지고 있으며, 현재로서는 콘솔에 오류를 기록하고 일반 "오류가 발생했습니다!"라는 메시지를 표시합니다. 대화 상자를 열고 오류가 발생한 위치에 따라 클라이언트를 특정 페이지로 리디렉션합니다. 그러나 Papertrail도 Heroku도이 사실을 실제 오류로 감지하지 못하며, 발생하는 경우 알림이나 알림을받지 못합니다.Papertrail에 오류를 자동으로보고합니다.

utilities.errorLogger = (err) => { 
    console.error(err); 
}; 

내가 오류를 던져 시도했습니다, 아래와 같이 작동합니다 :

utilities.errorLogger = (err) => { 
    throw new Error(err); 
}; 

그러나 오류가 클라이언트에 표시되는 순간

이 제 기능입니다 최종 사용자를 혼란스럽게하는 대신, 리디렉션되는 대신 마찬가지로, try-catch 블록에 오류를 넣어도 현재 가지고있는 것 (Papertrail이나 Heroku에 의해 오류가 기록되지만 기록되지 않음)은 변경되지 않습니다.

utilities.errorLogger = (err) => { 
    try { 
     throw new Error(err); 
    } 
    catch (err) { 
     console.error(err); 
    } 
}; 

어떻게 Papertrail와 Heroku가 클라이언트에 오류를 보낼 필요없이, 최대 선택하고 오류로 처리하는 내가 자동으로 오류가 발생 할 수 있습니까? 오류를 자동으로 처리하고 클라이언트에 오류 세부 정보를 보내지 않고보고를 진행할 수 있기를 바랍니다.

답변

0

답변을 찾는 과정을 마쳤습니다. 이전에 보지 못했던 기본 오류 처리기와 함께 제공되는 KeystoneJS을 사용하고 있습니다. 오류를 기록 할 수있는 상태에서 사람들을 리디렉션하도록 수정했습니다.