diff --git a/.env.production b/.env.production index b5f5dec..e0e10b0 100644 --- a/.env.production +++ b/.env.production @@ -1 +1,2 @@ -VUE_APP_API_LOCATION=https://spoton.k8s.kmlabz.com/api/ \ No newline at end of file +VUE_APP_API_LOCATION=https://spoton.k8s.kmlabz.com/api/ +VUE_APP_SENTRY_DSN=https://e63408ebab5e4fab8f6ade0ccdbc0a58@sentry.kmlabz.com/24 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 82f9760..8f13ce2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1160,6 +1160,74 @@ } } }, + "@sentry/browser": { + "version": "5.27.6", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-5.27.6.tgz", + "integrity": "sha512-pqrojE2ZmLUVz7l/ogtogK0+M2pK3bigYm0fja7vG7F7kXnCAwqAHDYfkFXEvFI8WvNwH+niy28lSoV95lnm0Q==", + "requires": { + "@sentry/core": "5.27.6", + "@sentry/types": "5.27.6", + "@sentry/utils": "5.27.6", + "tslib": "^1.9.3" + } + }, + "@sentry/core": { + "version": "5.27.6", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.27.6.tgz", + "integrity": "sha512-izCS5iyc6HAfpW1AsGXLAKetx82C1Sq1siAh97tOlSK58PVJAEH/WMiej9WuZJxCDTOtj94QtoLflssrZyAtFg==", + "requires": { + "@sentry/hub": "5.27.6", + "@sentry/minimal": "5.27.6", + "@sentry/types": "5.27.6", + "@sentry/utils": "5.27.6", + "tslib": "^1.9.3" + } + }, + "@sentry/hub": { + "version": "5.27.6", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.27.6.tgz", + "integrity": "sha512-bOMky3iu7zEghSaWmTayfme5tCpUok841qDCGxGKuyAtOhBDsgGNS/ApNEEDF2fyX0oo4G1cHYPWhX90ZFf/xA==", + "requires": { + "@sentry/types": "5.27.6", + "@sentry/utils": "5.27.6", + "tslib": "^1.9.3" + } + }, + "@sentry/integrations": { + "version": "5.27.6", + "resolved": "https://registry.npmjs.org/@sentry/integrations/-/integrations-5.27.6.tgz", + "integrity": "sha512-wRsvSrP48YZ3Jq3RNIHzS+cnlLgQL0S2Qpq5fUPrUngEGuOHKcunOpKOT11VbKjzNWM15662wD4GsONIUA2UFA==", + "requires": { + "@sentry/types": "5.27.6", + "@sentry/utils": "5.27.6", + "localforage": "1.8.1", + "tslib": "^1.9.3" + } + }, + "@sentry/minimal": { + "version": "5.27.6", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.27.6.tgz", + "integrity": "sha512-pKhzVQX9nL4m1dcnb2i2Y47IWVNs+K3wiYLgCB9hl9+ApxppfOc+fquiFoCloST3IuaD4yly2TtbOJgAMWcMxQ==", + "requires": { + "@sentry/hub": "5.27.6", + "@sentry/types": "5.27.6", + "tslib": "^1.9.3" + } + }, + "@sentry/types": { + "version": "5.27.6", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.27.6.tgz", + "integrity": "sha512-XOW9W8DrMk++4Hk7gWi9o5VR0o/GrqGfTKyFsHSIjqt2hL6kiMPvKeb2Hhmp7Iq37N2bDmRdWpM5m+68S2Jk6w==" + }, + "@sentry/utils": { + "version": "5.27.6", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.27.6.tgz", + "integrity": "sha512-/QMVLv+zrTfiIj2PU+SodSbSzD5MmamMOaljkDsRIVsj6gpkm1/VG1g2+40TZ0FbQ4hCW2F+iR7cnqzZBNmchA==", + "requires": { + "@sentry/types": "5.27.6", + "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", @@ -6190,6 +6258,11 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" + }, "import-cwd": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", @@ -6931,6 +7004,14 @@ "type-check": "~0.3.2" } }, + "lie": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", + "requires": { + "immediate": "~3.0.5" + } + }, "lines-and-columns": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", @@ -7016,6 +7097,14 @@ } } }, + "localforage": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.8.1.tgz", + "integrity": "sha512-azSSJJfc7h4bVpi0PGi+SmLQKJl2/8NErI+LhJsrORNikMZnhaQ7rv9fHj+ofwgSHrKRlsDCL/639a6nECIKuQ==", + "requires": { + "lie": "3.1.1" + } + }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -10552,8 +10641,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "tty-browserify": { "version": "0.0.0", diff --git a/package.json b/package.json index 2aba88c..e3a8a6c 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,8 @@ "lint": "vue-cli-service lint" }, "dependencies": { + "@sentry/browser": "^5.27.6", + "@sentry/integrations": "^5.27.6", "axios": "^0.21.0", "bootstrap": "^4.5.3", "bootstrap-vue": "^2.19.0", diff --git a/src/main.js b/src/main.js index c83bd39..5d1ca97 100644 --- a/src/main.js +++ b/src/main.js @@ -3,6 +3,16 @@ import App from '@/App.vue' import router from '@/router' import store from '@/store' import api from "@/api"; +import * as Sentry from "@sentry/browser"; +import { Vue as VueIntegration } from "@sentry/integrations"; + +// Setup sentry +if (process.env.VUE_APP_SENTRY_DSN) { + Sentry.init({ + dsn: process.env.VUE_APP_SENTRY_DSN, + integrations: [new VueIntegration({Vue, attachProps: true})], + }); +} import { BootstrapVue, IconsPlugin } from 'bootstrap-vue'