зеркало из https://github.com/github/docs.git
Report unhandledRejections and uncaughtExceptions to Sentry (#17014)
* Report to Sentry in error handlers * Support optional metadata
This commit is contained in:
Родитель
e85c2f8360
Коммит
b22fe856c8
|
@ -76,7 +76,7 @@ module.exports = class FailBot {
|
|||
* @param {Error} error
|
||||
* @param {any} metadata
|
||||
*/
|
||||
async sendException (error, metadata) {
|
||||
async sendException (error, metadata = {}) {
|
||||
const data = Object.assign({ app: this.app }, this.getFailbotContext(), metadata)
|
||||
const body = this.formatJSON(error, Object.assign({ app: this.app }, data))
|
||||
|
||||
|
|
|
@ -1,8 +1,16 @@
|
|||
process.on('uncaughtException', err => {
|
||||
const FailBot = require('./failbot')
|
||||
|
||||
process.on('uncaughtException', async err => {
|
||||
if (err.code === 'MODULE_NOT_FOUND') {
|
||||
console.error('\n\n🔥 Uh oh! It looks you are missing a required npm module.')
|
||||
console.error('Please run `npm install` to make sure you have all the required dependencies.\n\n')
|
||||
}
|
||||
|
||||
console.error(err)
|
||||
await FailBot.report(err)
|
||||
})
|
||||
|
||||
process.on('unhandledRejection', async err => {
|
||||
console.error(err)
|
||||
await FailBot.report(err)
|
||||
})
|
||||
|
|
Загрузка…
Ссылка в новой задаче