Эх сурвалжийг харах

chore: 新增日志收集

zhangyuhan 2 долоо хоног өмнө
parent
commit
de52c9c457

+ 1 - 0
apps/work-bench/package.json

@@ -14,6 +14,7 @@
     "@jy/work-bench-frame": "workspace:^",
     "@jy/work-bench-frame": "workspace:^",
     "core-js": "^3.8.3",
     "core-js": "^3.8.3",
     "element-ui": "^2.15.23-rc",
     "element-ui": "^2.15.23-rc",
+    "@sentry/vue": "^7.64.0",
     "lodash": "^4.17.21",
     "lodash": "^4.17.21",
     "qiankun": "^2.7.4",
     "qiankun": "^2.7.4",
     "qs": "^6.11.2",
     "qs": "^6.11.2",

+ 3 - 0
apps/work-bench/src/main.js

@@ -6,11 +6,14 @@ import store from './store'
 import App from './App.vue'
 import App from './App.vue'
 import { microAppsStart } from './register-app'
 import { microAppsStart } from './register-app'
 import '@jianyu/reset.css/reset-pc.scss'
 import '@jianyu/reset.css/reset-pc.scss'
+import { initSentry } from './sentry'
 
 
 Vue.config.productionTip = false
 Vue.config.productionTip = false
 
 
 microAppsStart()
 microAppsStart()
 
 
+initSentry(Vue)
+
 new Vue({
 new Vue({
   router,
   router,
   store,
   store,

+ 33 - 0
apps/work-bench/src/sentry.js

@@ -0,0 +1,33 @@
+import * as Sentry from '@sentry/vue'
+
+export function initSentry(Vue) {
+  if (process.env.NODE_ENV === 'production') {
+    Sentry.init({
+      Vue,
+      dsn: 'https://30ebbe89657141879efcfc55dc59803b@jysentry.jydev.jianyu360.cn/11',
+      release: 'v1.0.0',
+      environment: 'produce',
+      sampleRate: 1,
+      beforeSend: (event) => {
+        let isTest = false
+        try {
+          isTest = window.navigator.userAgent.lastIndexOf('jy-test') !== -1
+        } catch (e) {
+          console.warn(e)
+        }
+        if (isTest) {
+          return null
+        }
+        try {
+          event.user.email = localStorage.getItem('BIGMEMBER_PC')
+        } catch (e) {
+          console.warn(e)
+        }
+        return event
+      }
+    })
+    Sentry.setTag('url', location.href)
+    const id = document.cookie.match(/(^|;)\s*ud_safe\s*=\s*([^;]+)/)
+    Sentry.setUser({ id: id && id[2] })
+  }
+}