From cfaef8be94f5f1ed3d8cdbe0c12560a9204d93f0 Mon Sep 17 00:00:00 2001 From: Jonathan Cremin Date: Fri, 26 May 2017 18:33:18 +0100 Subject: [PATCH] Add backend Sentry reporting --- app.js | 9 ++++++++- package.json | 5 +++-- yarn.lock | 37 ++++++++++++++++++++++++++++++++++--- 3 files changed, 45 insertions(+), 6 deletions(-) diff --git a/app.js b/app.js index dc1ed44..cfd9940 100644 --- a/app.js +++ b/app.js @@ -10,6 +10,7 @@ import compress from 'koa-compress'; import serve from 'koa-static'; import views from 'koa-views'; import bodyparser from 'koa-bodyparser'; +import raven from 'raven'; import debuglog from 'debug'; import index from './routes/index'; import recent from './routes/recent'; @@ -22,8 +23,14 @@ const debug = debuglog('match.audio'); process.env.VUE_ENV = 'server'; +raven.config(process.env.SENTRY_DSN).install(); + const app = koa(); +app.on('error', (err) => { + raven.captureException(err); +}); + app.use(errorHandler()); app.use(bodyparser()); @@ -35,7 +42,7 @@ app.use(serve('public', { maxage: 31536000000 })); const manifest = JSON.parse(fs.readFileSync(path.join(__dirname, '/public/dist/manifest.json'))); -app.use(function * (next) { +app.use(function* state(next) { this.state = { manifest }; yield next; }); diff --git a/package.json b/package.json index d1ae43e..5869cf6 100644 --- a/package.json +++ b/package.json @@ -13,8 +13,8 @@ "heroku-postbuild": "npm run build" }, "engines": { - "node": "^6.7.0", - "npm": "^3.10.0" + "node": "^7.10.0", + "npm": "^4.2.0" }, "dependencies": { "babel": "^6.1.18", @@ -72,6 +72,7 @@ "node-uuid": "~1.4.2", "pg": "^6.1.0", "playmusic": "~2.2.1", + "raven": "^2.0.2", "sequelize": "^3.24.3", "spotify": "~0.3.0", "style-loader": "^0.17.0", diff --git a/yarn.lock b/yarn.lock index 267a096..a6e9694 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1276,6 +1276,10 @@ convert-source-map@^1.1.0: version "1.5.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" +cookie@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + cookiejar@^2.0.6: version "2.1.1" resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.1.tgz#41ad57b1b555951ec171412a81942b1e8200d34a" @@ -2731,7 +2735,7 @@ json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: dependencies: jsonify "~0.0.0" -json-stringify-safe@~5.0.1: +json-stringify-safe@5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" @@ -3097,6 +3101,10 @@ lru-cache@^4.0.1: pseudomap "^1.0.1" yallist "^2.0.0" +lsmod@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lsmod/-/lsmod-1.0.0.tgz#9a00f76dca36eb23fa05350afe1b585d4299e64b" + macaddress@^0.2.8: version "0.2.8" resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" @@ -4049,6 +4057,17 @@ randombytes@^2.0.0, randombytes@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.3.tgz#674c99760901c3c4112771a31e521dc349cc09ec" +raven@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/raven/-/raven-2.0.2.tgz#a43d3b8702ae6db2e91987628be8f289500810ae" + dependencies: + cookie "0.3.1" + json-stringify-safe "5.0.1" + lsmod "1.0.0" + stack-trace "0.0.9" + timed-out "4.0.1" + uuid "3.0.0" + raw-body@^2.1.3, raw-body@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.2.0.tgz#994976cf6a5096a41162840492f0bdc5d6e7fb96" @@ -4273,11 +4292,11 @@ resolve-path@^1.0.0, resolve-path@^1.3.1: http-errors "~1.5.0" path-is-absolute "1.0.1" -resolve@1.1.x, resolve@^1.1.6: +resolve@1.1.x: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.2.0, resolve@^1.3.3: +resolve@^1.1.6, resolve@^1.2.0, resolve@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" dependencies: @@ -4591,6 +4610,10 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" +stack-trace@0.0.9: + version "0.0.9" + resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.9.tgz#a8f6eaeca90674c333e7c43953f275b451510695" + "statuses@>= 1.2.1 < 2", "statuses@>= 1.3.1 < 2", statuses@^1.0.0, statuses@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" @@ -4802,6 +4825,10 @@ through@2, through@^2.3.6, through@~2.3, through@~2.3.1: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" +timed-out@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + timed-out@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-2.0.0.tgz#f38b0ae81d3747d628001f41dafc652ace671c0a" @@ -4957,6 +4984,10 @@ util@0.10.3, util@^0.10.3: dependencies: inherits "2.0.1" +uuid@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.0.tgz#6728fc0459c450d796a99c31837569bdf672d728" + uuid@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"