在 JS 和本机端开发到 Sentry 时,避免发送调试错误的推荐方法是什么?
Sentry @sentry/react-native 版本 6.1.0 尝试过什么,但没有成功:
选项1:
Sentry.init({
enabled: !__DEV__
dsn: "SOME_VALID_URL"
})
结果:这仅适用于 js 错误,但继续向 Sentry 发送本机错误
选项2:
if(!__DEV__) {
Sentry.init({
dsn: "SOME_VALID_URL"
})
}
结果:在根组件中使用
Sentry.wrap
时会生成警告
应用程序启动跨度无法完成。
在Sentry.wrap
之前被调用。Sentry.init
if(!__DEV__) {
Sentry.init({
dsn: "SOME_VALID_URL"
})
}
function RootLayout() {
...
}
export default Sentry.wrap(RootLayout);
根据 Sentry options docs,建议将 dns 设置为
undefined
。
- 用于连接Sentry并识别项目的Dsn。如果省略,SDK将不会向Sentry发送任何数据。
Sentry.init({
dsn: __DEV__
? undefined
: "YOUR_SENTRY_DSN_URL"
})
小心
enabled: !__DEV__
。目前,它不断发送在开发模式下生成的本机错误
如果您只是想最小化它,您可以使用以下解决方案:
Sentry.init({
debug: false // or use env like !isDev || !isStg
})