REF: better Sentry integration

This commit is contained in:
Overtorment 2021-04-15 13:20:07 +01:00
parent 602f16f1b4
commit b4a6a3ee97
3 changed files with 103 additions and 70 deletions

146
package-lock.json generated
View file

@ -5924,117 +5924,131 @@
"from": "@remobile/react-native-qrcode-local-image@git+https://github.com/BlueWallet/react-native-qrcode-local-image.git"
},
"@sentry/browser": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-5.27.2.tgz",
"integrity": "sha512-x6Sh4gBnAbI8gCma7DOTkjFIGPvDIOVN4oxfeY7ikU0446CLp6V+CYjlc4CoVgGpfWs4Zd/Og9V9WiysAl/nDg==",
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.2.1.tgz",
"integrity": "sha512-OAikFZ9EimD3noxMp8tA6Cf6qJcQ2U8k5QSgTPwdx+09nZOGJzbRFteK7WWmrS93ZJdzN61lpSQbg5v+bmmfbQ==",
"requires": {
"@sentry/core": "5.27.2",
"@sentry/types": "5.27.2",
"@sentry/utils": "5.27.2",
"@sentry/core": "6.2.1",
"@sentry/types": "6.2.1",
"@sentry/utils": "6.2.1",
"tslib": "^1.9.3"
}
},
"@sentry/cli": {
"version": "1.58.0",
"resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-1.58.0.tgz",
"integrity": "sha512-bUBKBYyKVzjNhQpAfPJ3XAvAyNNvrD2Rtpo6B0MR3Okw3prdLFgv9Ta8TN19IXT7u9w13B2EdMnNA6dQDtrD4g==",
"version": "1.64.0",
"resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-1.64.0.tgz",
"integrity": "sha512-MHWHiYVBJaE0y/JVSziZIclBYhINiI4VsJ10r7rcJYAwDah3JYBPMrv0iwmuxBVWRFMSuAmSpivkzn67JS6sPg==",
"requires": {
"https-proxy-agent": "^5.0.0",
"mkdirp": "^0.5.5",
"node-fetch": "^2.6.0",
"npmlog": "^4.1.2",
"progress": "^2.0.3",
"proxy-from-env": "^1.1.0"
}
},
"@sentry/core": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.27.2.tgz",
"integrity": "sha512-FMX0Aignhi9Rk4tZkjwSXCsFFQc8FIOgUTvfIKCdayLhKxfbY0H37b0fFNzaQ9v15SFzIZJ9uzw4PTmjzEh6Uw==",
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.2.1.tgz",
"integrity": "sha512-jPqQEtafxxDtLONhCbTHh/Uq8mZRhsfbwJTSVYfPVEe/ELfFZLQK7tP6rOh7zEWKbTkE0mE6XcaoH3ZRAhgrqg==",
"requires": {
"@sentry/hub": "5.27.2",
"@sentry/minimal": "5.27.2",
"@sentry/types": "5.27.2",
"@sentry/utils": "5.27.2",
"@sentry/hub": "6.2.1",
"@sentry/minimal": "6.2.1",
"@sentry/types": "6.2.1",
"@sentry/utils": "6.2.1",
"tslib": "^1.9.3"
}
},
"@sentry/hub": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.27.2.tgz",
"integrity": "sha512-KCAWF5oDXd/Pjzbcmfj53F5ZzOX53Rzi23a2mWyUXMdPXoXIiMrIcdC/DqrqKV787LvOJcSFaTychJCH3t15/A==",
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.2.1.tgz",
"integrity": "sha512-pG7wCQeRpzeP6t0bT4T0X029R19dbDS3/qswF8BL6bg0AI3afjfjBAZm/fqn1Uwe/uBoMHVVdbxgJDZeQ5d4rQ==",
"requires": {
"@sentry/types": "5.27.2",
"@sentry/utils": "5.27.2",
"@sentry/types": "6.2.1",
"@sentry/utils": "6.2.1",
"tslib": "^1.9.3"
}
},
"@sentry/integrations": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/integrations/-/integrations-5.27.2.tgz",
"integrity": "sha512-sTCZeAVL9b0PiIjj2KE8qgtS0FgXmhmeEwoQDF2iOr5nk4p/6Xav6S5UPPIY+xe5M44jGCcX5vI4jZqGczaHZg==",
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/integrations/-/integrations-6.2.1.tgz",
"integrity": "sha512-UBvuil/b9M5HGH6aBDzTiIVRsmpC/wqwDKy28IO05XLdalmKgJ9C1EQhoyN6xw+1lINpXXFtfq4NhfgZgWbc7Q==",
"requires": {
"@sentry/types": "5.27.2",
"@sentry/utils": "5.27.2",
"localforage": "1.8.1",
"@sentry/types": "6.2.1",
"@sentry/utils": "6.2.1",
"localforage": "^1.8.1",
"tslib": "^1.9.3"
}
},
"@sentry/minimal": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.27.2.tgz",
"integrity": "sha512-n9SssI30rpS1tw6hH0ylxVlONdmZCqiPy60fotxUzql6mCo/nW7tcADsW15fvQlUQ160VaGf3iMj+hpHkRBerw==",
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.2.1.tgz",
"integrity": "sha512-wuSXB4Ayxv9rBEQ4pm7fnG4UU2ZPtPnnChoEfd4/mw1UthXSvmPFEn6O4pdo2G8fTkl8eqm6wT/Q7uIXMEmw+A==",
"requires": {
"@sentry/hub": "5.27.2",
"@sentry/types": "5.27.2",
"@sentry/hub": "6.2.1",
"@sentry/types": "6.2.1",
"tslib": "^1.9.3"
}
},
"@sentry/react": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/react/-/react-5.27.2.tgz",
"integrity": "sha512-xfV/hmCS+BhJjMRvkz66teHzbQ2t9pEI/LMmwJp5ygIktx+4ZREwdJ4cCnlx0BVrGDMxdp0ZZ6d92ncqbuc8Rw==",
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/react/-/react-6.2.1.tgz",
"integrity": "sha512-emJnYVASM2hej2f8eSjqiDRMljwLsDJDSwa6kVc5HUOs9gnVrE4MR+vSywraACf5tKZbH1YI+NUXCmR++fIB0g==",
"requires": {
"@sentry/browser": "5.27.2",
"@sentry/minimal": "5.27.2",
"@sentry/types": "5.27.2",
"@sentry/utils": "5.27.2",
"@sentry/browser": "6.2.1",
"@sentry/minimal": "6.2.1",
"@sentry/types": "6.2.1",
"@sentry/utils": "6.2.1",
"hoist-non-react-statics": "^3.3.2",
"tslib": "^1.9.3"
}
},
"@sentry/react-native": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/@sentry/react-native/-/react-native-1.9.0.tgz",
"integrity": "sha512-R17UcmuWWK3M1uWI0kMf3n08lq1a8aUAa5NYvjNLwi568gb6HUBye+lMQVCtH3DUHOUENwCrFqloXFaCKlsaWA==",
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/@sentry/react-native/-/react-native-2.4.0.tgz",
"integrity": "sha512-yRUN36tKRSsGEtNHihEzl0KqGh7pmWfNV0h3jf5Q1VKXNHA9iO2ABcmr47wScrbrK2MDL1umO1AQNq2+6z24QA==",
"requires": {
"@sentry/browser": "^5.25.0",
"@sentry/core": "^5.25.0",
"@sentry/hub": "^5.25.0",
"@sentry/integrations": "^5.25.0",
"@sentry/react": "^5.25.0",
"@sentry/types": "^5.25.0",
"@sentry/utils": "^5.25.0",
"@sentry/wizard": "^1.1.4"
"@sentry/browser": "6.2.1",
"@sentry/core": "6.2.1",
"@sentry/hub": "6.2.1",
"@sentry/integrations": "6.2.1",
"@sentry/react": "6.2.1",
"@sentry/tracing": "6.2.1",
"@sentry/types": "6.2.1",
"@sentry/utils": "6.2.1",
"@sentry/wizard": "^1.2.2"
}
},
"@sentry/tracing": {
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-6.2.1.tgz",
"integrity": "sha512-bvStY1SnL08wkSeVK3j9K5rivQQJdKFCPR2VYRFOCaUoleZ6ChPUnBvxQ/E2LXc0hk/y/wo1q4r5B0dfCCY+bQ==",
"requires": {
"@sentry/hub": "6.2.1",
"@sentry/minimal": "6.2.1",
"@sentry/types": "6.2.1",
"@sentry/utils": "6.2.1",
"tslib": "^1.9.3"
}
},
"@sentry/types": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.27.2.tgz",
"integrity": "sha512-oszEOlWJuySvGc2HJ2KLTgtYwRFnHWDu8YIZ99UhmO2PcGQ5HlZJpV2oC8n3x0g1YSSlAaThjKbliJEAT7fmPg=="
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.2.1.tgz",
"integrity": "sha512-h0OV1QT+fv5ojfK5/+iEXClu33HirmvbjcQC2jf05IHj9yXIOWy6EB10S8nBjuLiiFqQiAQYj3FN9Ip4eN8NJA=="
},
"@sentry/utils": {
"version": "5.27.2",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.27.2.tgz",
"integrity": "sha512-ZrdRgcFapi1NACbtvnPLOIXKjBPVTlhGzmXNCVao0uRBBRNJa5i2Mjp/U/Xy/fT0K1MGJQ+F9YZjZPnAMsDNbw==",
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.2.1.tgz",
"integrity": "sha512-6kQgM/yBPdXu+3qbJnI6HBcWztN9QfiMkH++ZiKk4ERhg9d2LYWlze478uTU5Fyo/JQYcp+McpjtjpR9QIrr0g==",
"requires": {
"@sentry/types": "5.27.2",
"@sentry/types": "6.2.1",
"tslib": "^1.9.3"
}
},
"@sentry/wizard": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/@sentry/wizard/-/wizard-1.1.4.tgz",
"integrity": "sha512-xVpL0lnQK2bbEwUKKjs3dKhy27va8HW75Q8r1vaR63iBCpB5LpP4Q4NN5G/VEWdYnH8rcazsOA207716E1cm4g==",
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/@sentry/wizard/-/wizard-1.2.4.tgz",
"integrity": "sha512-FbS20ZBMK9fSdzkUHUPAh/SmIKK/EYsixoe3jp4PIVzdooCJ7mywdo4NcNnr9Hmg6VnL5SfLATMwXO+FZCzZZg==",
"requires": {
"@sentry/cli": "^1.52.4",
"chalk": "^2.4.1",
@ -15567,9 +15581,9 @@
}
},
"localforage": {
"version": "1.8.1",
"resolved": "https://registry.npmjs.org/localforage/-/localforage-1.8.1.tgz",
"integrity": "sha512-azSSJJfc7h4bVpi0PGi+SmLQKJl2/8NErI+LhJsrORNikMZnhaQ7rv9fHj+ofwgSHrKRlsDCL/639a6nECIKuQ==",
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/localforage/-/localforage-1.9.0.tgz",
"integrity": "sha512-rR1oyNrKulpe+VM9cYmcFn6tsHuokyVHFaCM3+osEmxaHTbEk8oQu6eGDfS6DQLWi/N67XRmB8ECG37OES368g==",
"requires": {
"lie": "3.1.1"
}
@ -19568,9 +19582,9 @@
}
},
"rxjs": {
"version": "6.6.3",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz",
"integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==",
"version": "6.6.7",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
"integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
"requires": {
"tslib": "^1.9.0"
}

View file

@ -81,7 +81,7 @@
"@react-navigation/native": "5.9.3",
"@react-navigation/stack": "5.14.3",
"@remobile/react-native-qrcode-local-image": "git+https://github.com/BlueWallet/react-native-qrcode-local-image.git",
"@sentry/react-native": "1.9.0",
"@sentry/react-native": "2.4.0",
"aez": "1.0.1",
"amplitude-js": "7.4.4",
"assert": "1.5.0",

View file

@ -1,11 +1,19 @@
import React from 'react';
import { TouchableOpacity, ScrollView, Linking, Image, View, Text, StyleSheet, useWindowDimensions } from 'react-native';
import { TouchableOpacity, ScrollView, Linking, Image, View, Text, StyleSheet, useWindowDimensions, Platform } from 'react-native';
import { useNavigation, useTheme } from '@react-navigation/native';
import { Icon } from 'react-native-elements';
import { getApplicationName, getVersion, getBundleId, getBuildNumber } from 'react-native-device-info';
import { getApplicationName, getVersion, getBundleId, getBuildNumber, getUniqueId } from 'react-native-device-info';
import Rate, { AndroidMarket } from 'react-native-rate';
import { BlueButton, BlueCard, BlueListItem, BlueSpacing20, BlueTextCentered, SafeBlueArea } from '../../BlueComponents';
import {
BlueButton,
BlueCard,
BlueListItem,
BlueSpacing20,
BlueTextCentered,
SafeBlueArea,
BlueCopyToClipboardButton,
} from '../../BlueComponents';
import navigationStyle from '../../components/navigationStyle';
import loc from '../../loc';
@ -14,6 +22,10 @@ const About = () => {
const { colors } = useTheme();
const { width, height } = useWindowDimensions();
const styles = StyleSheet.create({
copyToClipboard: {
justifyContent: 'center',
alignItems: 'center',
},
center: {
justifyContent: 'center',
alignItems: 'center',
@ -198,6 +210,13 @@ const About = () => {
<BlueTextCentered>
w, h = {width}, {height}
</BlueTextCentered>
<BlueTextCentered>Unique ID: {getUniqueId()}</BlueTextCentered>
<View style={styles.copyToClipboard}>
<BlueCopyToClipboardButton
stringToCopy={(Platform.OS === 'android' ? 'user.id:' : 'app.device:') + getUniqueId()}
displayText="copy"
/>
</View>
<BlueSpacing20 />
<BlueSpacing20 />
</ScrollView>