[ENG-1072] Connect sentry with sourcemaps (#1293)

add sourcemaps
This commit is contained in:
Brendan Allan 2023-09-04 19:20:29 +08:00 committed by GitHub
parent 53828ce4d0
commit ae0f5c744e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 153 additions and 19 deletions

2
.gitignore vendored
View file

@ -15,7 +15,7 @@ cli/turbo.exe
storybook-static/
.DS_Store
cache
.env
.env*
vendor/
data
node_modules

View file

@ -19,6 +19,7 @@
"@sd/client": "workspace:*",
"@sd/interface": "workspace:*",
"@sd/ui": "workspace:*",
"@sentry/vite-plugin": "^2.7.0",
"@tanstack/react-query": "^4.24.4",
"@tauri-apps/api": "1.3.0",
"comlink": "^4.4.1",
@ -38,8 +39,8 @@
"semver": "^7.5.0",
"typescript": "^5.0.4",
"vite": "^4.0.4",
"vite-plugin-html": "^3.2.0",
"vite-plugin-svgr": "^2.2.1",
"vite-tsconfig-paths": "^4.0.3",
"vite-plugin-html": "^3.2.0"
"vite-tsconfig-paths": "^4.0.3"
}
}

View file

@ -1,4 +1,5 @@
import { Plugin, mergeConfig } from 'vite';
import { sentryVitePlugin } from '@sentry/vite-plugin';
import { Plugin, defineConfig, loadEnv, mergeConfig } from 'vite';
import baseConfig from '../../packages/config/vite';
const devtoolsPlugin: Plugin = {
@ -16,9 +17,20 @@ const devtoolsPlugin: Plugin = {
}
};
export default mergeConfig(baseConfig, {
server: {
port: 8001
},
plugins: [devtoolsPlugin]
export default defineConfig(({ mode }) => {
process.env = { ...process.env, ...loadEnv(mode, process.cwd(), '') };
return mergeConfig(baseConfig, {
server: {
port: 8001
},
plugins: [
devtoolsPlugin,
sentryVitePlugin({
authToken: process.env.SENTRY_AUTH_TOKEN,
org: 'spacedriveapp',
project: 'desktop'
})
]
});
});

View file

@ -26,6 +26,7 @@ export default defineConfig({
},
root: 'src',
build: {
sourcemap: true,
outDir: '../dist',
assetsDir: '.'
},

View file

@ -68,6 +68,9 @@ importers:
'@sd/ui':
specifier: workspace:*
version: link:../../packages/ui
'@sentry/vite-plugin':
specifier: ^2.7.0
version: 2.7.0
'@tanstack/react-query':
specifier: ^4.24.4
version: 4.29.1(react-dom@18.2.0)(react-native@0.72.3)(react@18.2.0)
@ -5822,7 +5825,7 @@ packages:
magic-string: 0.27.0
react-docgen-typescript: 2.2.2(typescript@5.0.4)
typescript: 5.0.4
vite: 4.3.9(less@4.2.0)
vite: 4.3.9(@types/node@18.15.1)
/@jridgewell/gen-mapping@0.3.3:
resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
@ -8296,6 +8299,16 @@ packages:
join-component: 1.1.0
dev: false
/@sentry-internal/tracing@7.66.0:
resolution: {integrity: sha512-3vCgC2hC3T45pn53yTDVcRpHoJTBxelDPPZVsipAbZnoOVPkj7n6dNfDhj3I3kwWCBPahPkXmE+R4xViR8VqJg==}
engines: {node: '>=8'}
dependencies:
'@sentry/core': 7.66.0
'@sentry/types': 7.66.0
'@sentry/utils': 7.66.0
tslib: 2.6.2
dev: false
/@sentry/browser@7.16.0:
resolution: {integrity: sha512-tJ063zvoF8Raw7mzQEXupOFPSN6v36WIbsDVGeFdToPCwViaBuATaxvWCrudGzsnBkMyItmTLJkzn9SEIXUOiw==}
engines: {node: '>=8'}
@ -8306,6 +8319,39 @@ packages:
tslib: 1.14.1
dev: false
/@sentry/bundler-plugin-core@2.7.0:
resolution: {integrity: sha512-ZxJG/DsRXJ9BMaKv+butL3TaiHsuuUy1bNkl56/FCbCt1rYuzltEPT2cBuuveieg66ZWtzerSF17QX3v6svtJQ==}
engines: {node: '>= 14'}
dependencies:
'@sentry/cli': 2.20.6
'@sentry/node': 7.66.0
'@sentry/utils': 7.66.0
dotenv: 16.3.1
find-up: 5.0.0
glob: 9.3.2
magic-string: 0.27.0
unplugin: 1.0.1
transitivePeerDependencies:
- encoding
- supports-color
dev: false
/@sentry/cli@2.20.6:
resolution: {integrity: sha512-j4OFbDCIo/dB/uXDmXnRqCbku0KquekSFSG0Wb6RKwkGqpKwFMRauKXZJrgL4as3qIfDX8HrjNRv257QYMwdQA==}
engines: {node: '>= 10'}
hasBin: true
requiresBuild: true
dependencies:
https-proxy-agent: 5.0.1
node-fetch: 2.7.0
progress: 2.0.3
proxy-from-env: 1.1.0
which: 2.0.2
transitivePeerDependencies:
- encoding
- supports-color
dev: false
/@sentry/core@7.16.0:
resolution: {integrity: sha512-vq6H1b/IPTvzDD9coQ3wIudvSjkAYuUlXb1dv69dRlq4v3st9dcKBps1Zf0lQ1i4TVlDLoe1iGMmNFglMF1Q5w==}
engines: {node: '>=8'}
@ -8315,11 +8361,41 @@ packages:
tslib: 1.14.1
dev: false
/@sentry/core@7.66.0:
resolution: {integrity: sha512-WMAEPN86NeCJ1IT48Lqiz4MS5gdDjBwP4M63XP4msZn9aujSf2Qb6My5uT87AJr9zBtgk8MyJsuHr35F0P3q1w==}
engines: {node: '>=8'}
dependencies:
'@sentry/types': 7.66.0
'@sentry/utils': 7.66.0
tslib: 2.6.2
dev: false
/@sentry/node@7.66.0:
resolution: {integrity: sha512-PxqIqLr4Sh5xcDfECiBQ4PuZ7v8yTgLhaRkruWrZPYxQrcJFPkwbFkw/IskzVnhT2VwXUmeWEIlRMQKBJ0t83A==}
engines: {node: '>=8'}
dependencies:
'@sentry-internal/tracing': 7.66.0
'@sentry/core': 7.66.0
'@sentry/types': 7.66.0
'@sentry/utils': 7.66.0
cookie: 0.4.2
https-proxy-agent: 5.0.1
lru_map: 0.3.3
tslib: 2.6.2
transitivePeerDependencies:
- supports-color
dev: false
/@sentry/types@7.16.0:
resolution: {integrity: sha512-i6D+OK6d0l/k+VQvRp/Pt21WkDEgVBUIZq+sOkEZJczbcfexVdXKeXXoYTD2vYuFq8Yy28fzlsZaKI+NoH94yQ==}
engines: {node: '>=8'}
dev: false
/@sentry/types@7.66.0:
resolution: {integrity: sha512-uUMSoSiar6JhuD8p7ON/Ddp4JYvrVd2RpwXJRPH1A4H4Bd4DVt1mKJy1OLG6HdeQv39XyhB1lPZckKJg4tATPw==}
engines: {node: '>=8'}
dev: false
/@sentry/utils@7.16.0:
resolution: {integrity: sha512-3Zh1txg7IRp4kZAdG27YF7K6lD1IZyuAo9KjoPg1Xzqa4DOZyASJuEkbf+rK2a9T4HrtVHHXJUsNbKg8WM3VHg==}
engines: {node: '>=8'}
@ -8328,6 +8404,25 @@ packages:
tslib: 1.14.1
dev: false
/@sentry/utils@7.66.0:
resolution: {integrity: sha512-9GYUVgXjK66uXXcLXVMXVzlptqMtq1eJENCuDeezQiEFrNA71KkLDg00wESp+LL+bl3wpVTBApArpbF6UEG5hQ==}
engines: {node: '>=8'}
dependencies:
'@sentry/types': 7.66.0
tslib: 2.6.2
dev: false
/@sentry/vite-plugin@2.7.0:
resolution: {integrity: sha512-VDkKneqIV5ESg41iz0ODsTl4BXsd4C/PhLgkjES9TFzDcG9VcnbECCxosXZd7nDZB9EQZDIsKSEc29PzLl1JUQ==}
engines: {node: '>= 14'}
dependencies:
'@sentry/bundler-plugin-core': 2.7.0
unplugin: 1.0.1
transitivePeerDependencies:
- encoding
- supports-color
dev: false
/@shopify/flash-list@1.5.0(@babel/runtime@7.22.11)(react-native@0.72.3)(react@18.2.0):
resolution: {integrity: sha512-XeocevDIXastr6jh3TPo1MzV5XkdqTyWtw/j8kUhz9EOBc2SzNWbpJWyzrAsYKlqYNrnxxs0P9C0amlX2jaQnw==}
peerDependencies:
@ -8844,7 +8939,7 @@ packages:
remark-slug: 6.1.0
rollup: 3.28.1
typescript: 5.0.4
vite: 4.3.9(less@4.2.0)
vite: 4.3.9(@types/node@18.15.1)
transitivePeerDependencies:
- supports-color
@ -9444,7 +9539,7 @@ packages:
react: 18.2.0
react-docgen: 6.0.0-alpha.3
react-dom: 18.2.0(react@18.2.0)
vite: 4.3.9(less@4.2.0)
vite: 4.3.9(@types/node@18.15.1)
transitivePeerDependencies:
- '@preact/preset-vite'
- supports-color
@ -12401,6 +12496,11 @@ packages:
/cookie-signature@1.0.6:
resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==}
/cookie@0.4.2:
resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==}
engines: {node: '>= 0.6'}
dev: false
/cookie@0.5.0:
resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==}
engines: {node: '>= 0.6'}
@ -15195,6 +15295,16 @@ packages:
minimatch: 5.1.6
once: 1.4.0
/glob@9.3.2:
resolution: {integrity: sha512-BTv/JhKXFEHsErMte/AnfiSv8yYOLLiyH2lTg8vn02O21zWFgHPTfxtgn1QRe7NRgggUhC8hacR2Re94svHqeA==}
engines: {node: '>=16 || 14 >=14.17'}
dependencies:
fs.realpath: 1.0.0
minimatch: 7.4.6
minipass: 4.2.8
path-scurry: 1.10.1
dev: false
/glob@9.3.5:
resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==}
engines: {node: '>=16 || 14 >=14.17'}
@ -16872,7 +16982,6 @@ packages:
/lru-cache@10.0.1:
resolution: {integrity: sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==}
engines: {node: 14 || >=16.14}
dev: true
/lru-cache@2.7.3:
resolution: {integrity: sha512-WpibWJ60c3AgAz8a2iYErDrcT2C7OmKnsWhIcHOjkUHFjkXncJhtLxNSqUmxRxRunpb5I8Vprd7aNSd2NtksJQ==}
@ -16895,6 +17004,10 @@ packages:
es5-ext: 0.10.62
dev: true
/lru_map@0.3.3:
resolution: {integrity: sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==}
dev: false
/lz-string@1.5.0:
resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==}
hasBin: true
@ -18340,7 +18453,6 @@ packages:
engines: {node: '>=10'}
dependencies:
brace-expansion: 2.0.1
dev: true
/minimatch@8.0.4:
resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==}
@ -18382,7 +18494,6 @@ packages:
/minipass@4.2.8:
resolution: {integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==}
engines: {node: '>=8'}
dev: true
/minipass@5.0.0:
resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==}
@ -18391,7 +18502,6 @@ packages:
/minipass@7.0.3:
resolution: {integrity: sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg==}
engines: {node: '>=16 || 14 >=14.17'}
dev: true
/minizlib@2.1.2:
resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==}
@ -19119,7 +19229,6 @@ packages:
dependencies:
lru-cache: 10.0.1
minipass: 7.0.3
dev: true
/path-to-regexp@0.1.7:
resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==}
@ -19700,7 +19809,6 @@ packages:
/proxy-from-env@1.1.0:
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
dev: true
/prr@1.0.1:
resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==}
@ -23057,6 +23165,15 @@ packages:
webpack-sources: 3.2.3
webpack-virtual-modules: 0.4.6
/unplugin@1.0.1:
resolution: {integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==}
dependencies:
acorn: 8.10.0
chokidar: 3.5.3
webpack-sources: 3.2.3
webpack-virtual-modules: 0.5.0
dev: false
/untildify@4.0.0:
resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==}
engines: {node: '>=8'}
@ -23511,7 +23628,6 @@ packages:
rollup: 3.28.1
optionalDependencies:
fsevents: 2.3.3
dev: true
/vite@4.3.9(less@4.2.0):
resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==}
@ -23636,6 +23752,10 @@ packages:
/webpack-virtual-modules@0.4.6:
resolution: {integrity: sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==}
/webpack-virtual-modules@0.5.0:
resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==}
dev: false
/webpack@5.88.2(esbuild@0.17.19):
resolution: {integrity: sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==}
engines: {node: '>=10.13.0'}