From eb9a0834eae59dc144d82f9de9ca908b49319476 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Moritz=20Kr=C3=B6ger?= Date: Fri, 24 May 2019 15:10:14 +0200 Subject: [PATCH] :chart_with_upwards_trend: Adds Sentry for error handling --- package-lock.json | 67 +++++++++++++++++++++++++++++++++++++++++++++++ package.json | 2 ++ src/main.js | 9 +++++++ 3 files changed, 78 insertions(+) diff --git a/package-lock.json b/package-lock.json index dd7f5d8..389e00d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1214,6 +1214,73 @@ "any-observable": "^0.3.0" } }, + "@sentry/browser": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-5.3.0.tgz", + "integrity": "sha512-MV02kS3Q5hv8/CW0nsjD/bOwWAq75aSFzebidwLfl6fvRSmuDsy5bjufr7a3ZK4SyYEe8GakqfQqqr81Y0vlVw==", + "requires": { + "@sentry/core": "5.3.0", + "@sentry/types": "5.2.0", + "@sentry/utils": "5.3.0", + "tslib": "^1.9.3" + } + }, + "@sentry/core": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.3.0.tgz", + "integrity": "sha512-m4kB1RB5Ilx7/QTvhfRblyEfyGdV8dDLqE6CS3ftqjbFG0lhkqHjhj3Zai7wphfRnnZsfLGpYT8VJOgS9jUQuQ==", + "requires": { + "@sentry/hub": "5.3.0", + "@sentry/minimal": "5.3.0", + "@sentry/types": "5.2.0", + "@sentry/utils": "5.3.0", + "tslib": "^1.9.3" + } + }, + "@sentry/hub": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.3.0.tgz", + "integrity": "sha512-FT+V5bScUoKbiMVZGOYcj81A7F7kQGbMXG+/94yO5s/6s/XJw4AbX5asR/N3Y57QNeeUYWQ2O4eDCjMeRdwXLw==", + "requires": { + "@sentry/types": "5.2.0", + "@sentry/utils": "5.3.0", + "tslib": "^1.9.3" + } + }, + "@sentry/integrations": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@sentry/integrations/-/integrations-5.3.1.tgz", + "integrity": "sha512-TdjSH088nCa4C7vHprx/44wX3/PIz25233tTWzgi+5T+K+KwsSmtpEiWAJiAAejY+Kqf4FMDD5ILDJga1VjUEQ==", + "requires": { + "@sentry/types": "5.2.0", + "@sentry/utils": "5.3.0", + "tslib": "^1.9.3" + } + }, + "@sentry/minimal": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.3.0.tgz", + "integrity": "sha512-s1ok1AI7FQZx+zvgFVjcj1on090VSHo6Bf3f8idGRI2EvAB868q8DJoEcMXJGdJE59zZQ6YCEF5PXAmBm/h9Uw==", + "requires": { + "@sentry/hub": "5.3.0", + "@sentry/types": "5.2.0", + "tslib": "^1.9.3" + } + }, + "@sentry/types": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.2.0.tgz", + "integrity": "sha512-QzMVYgONsScAiEGY5XRtSeMwH8464oRdaxCMTtXBuYfF9muvxHqQyF094GVRiconpgKelok5ke9HwrbNUEiE7w==" + }, + "@sentry/utils": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.3.0.tgz", + "integrity": "sha512-4nfv6p2/PPWt7jk/AE73K7YydFHiBs3GvJLpO+PHgNyU3GBtQGST5HggdkGy+mCbtoBdkCIf1CRNeabCxTZ92g==", + "requires": { + "@sentry/types": "5.2.0", + "tslib": "^1.9.3" + } + }, "@soda/friendly-errors-webpack-plugin": { "version": "1.7.1", "resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.1.tgz", diff --git a/package.json b/package.json index 1a08808..fa40b1a 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,8 @@ "data": "node bin/xlsx-data" }, "dependencies": { + "@sentry/browser": "^5.3.0", + "@sentry/integrations": "^5.3.1", "lint-staged": "^8.1.5", "register-service-worker": "^1.6.2", "stylelint": "^9.10.1", diff --git a/src/main.js b/src/main.js index a57a817..158b541 100644 --- a/src/main.js +++ b/src/main.js @@ -1,6 +1,8 @@ import Vue from 'vue' import VueSVGIcon from 'vue-svgicon' import VueAnalytics from 'vue-analytics' +import { init as initSentry } from '@sentry/browser' +import * as Integrations from '@sentry/integrations' import App from '@/app/app' import router from '@/router' @@ -24,6 +26,13 @@ Vue.use(VueAnalytics, { } }) +if (process.env.NODE_ENV === 'production') { + initSentry({ + dsn: process.env.VUE_APP_SENTRY_DSN, + integrations: [new Integrations.Vue({ Vue, attachProps: true })] + }) +} + new Vue({ i18n, router,