From b91e2b5eb1f34e8f835ac4a8a35b7da16fe66c78 Mon Sep 17 00:00:00 2001 From: kumavis Date: Mon, 22 Jan 2018 15:54:26 -0800 Subject: [PATCH 1/2] sentry - report failed txs --- app/scripts/background.js | 12 +++++++++++- app/scripts/setupRaven.js | 2 ++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/app/scripts/background.js b/app/scripts/background.js index 8c1252d3e..0471cee3b 100644 --- a/app/scripts/background.js +++ b/app/scripts/background.js @@ -27,7 +27,7 @@ global.METAMASK_NOTIFIER = notificationManager // setup sentry error reporting const release = platform.getVersion() -setupRaven({ release }) +const raven = setupRaven({ release }) let popupIsOpen = false @@ -77,6 +77,16 @@ function setupController (initState) { }) global.metamaskController = controller + // report failed transactions to Sentry + controller.txController.on(`tx:status-update`, (txId, status) => { + if (status !== 'failed') return + const txMeta = controller.txController.txStateManager.getTx(txId) + raven.captureMessage('Transaction Failed', { + // "extra" key is required by Sentry + extra: txMeta, + }) + }) + // setup state persistence pump( asStream(controller.store), diff --git a/app/scripts/setupRaven.js b/app/scripts/setupRaven.js index 4888c85fe..7beffeff9 100644 --- a/app/scripts/setupRaven.js +++ b/app/scripts/setupRaven.js @@ -21,4 +21,6 @@ function setupRaven(opts) { Raven.config(ravenTarget, { release, }).install() + + return Raven } From 7e32ba283314e21189850637ff28a4c6d12a213f Mon Sep 17 00:00:00 2001 From: kumavis Date: Mon, 22 Jan 2018 15:57:25 -0800 Subject: [PATCH 2/2] changelog - add note on sentry --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c4efbe00e..065b7ba03 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Current Master - Add ability to bypass gas estimation loading indicator. +- Forward failed transactions to Sentry error reporting service ## 3.13.5 2018-1-16