React native Sentry使用CodePush进行本机反应,不使用源地图
我似乎无法理解这一点。有人能帮我解决这个问题吗?我正在使用CodePush上传我的应用程序,我希望Sentry处理我的错误,因为appcenter的诊断不是很好 我的应用程序的根组件中有这个React native Sentry使用CodePush进行本机反应,不使用源地图,react-native,sentry,code-push,React Native,Sentry,Code Push,我似乎无法理解这一点。有人能帮我解决这个问题吗?我正在使用CodePush上传我的应用程序,我希望Sentry处理我的错误,因为appcenter的诊断不是很好 我的应用程序的根组件中有这个 if (process.env.NODE_ENV === 'production') { Sentry.config('****',{ deactivateStacktraceMerging: false }).install(); codePush.getUpdateMetadata(
if (process.env.NODE_ENV === 'production') {
Sentry.config('****',{
deactivateStacktraceMerging: false
}).install();
codePush.getUpdateMetadata().then((update) => {
if (update) {
Sentry.setVersion(update.appVersion + '-codepush:' + update.label);
}
});
}
我有一个部署包脚本,它将部署到codepush,并运行文档中的sentry命令
appcenter codepush release react-a account/project--output dir./build&export SENTRY_PROPERTIES=./ios/SENTRY.PROPERTIES&&SENTRY cli react本机appcenter account/project ios./build/codepush
每次我捕获到错误或我捕获到的错误时,我都缺乏关于抛出错误的文件的实际信息,并且我看到在处理此事件时遇到了1个错误,顶部显示的源代码未找到app:///main.jsbundle
当我展开它时
我觉得这一定是因为sentry没有正确连接到codepush以获取我的源地图?我遇到了同样的问题-所有内容都被上传到sentry并附加到发布中,但问题显示了此警告
我的问题是,应用程序和Sentry版本中的捆绑包ID不同,同步解决了问题。我正在处理同一个堆栈,捆绑包正在Sentry中上载,但我有两个问题:
在哨兵中,他们提供了这个命令-
sentry cli反应本机应用中心YourApp ios./build/CodePush--dist YourBuildNumber
这里的YourBuildNumber
是什么,是应用程序版本、哨兵版本号、codepush版本标签还是其他什么
我得到的错误跟踪是缩小的js,是否有一种方法可以正确地获得堆栈跟踪。
您需要使用release
和dist
选项调用Sentry.init
,并在通过CLI上载sourcemaps时传递与标志相同的值
按照
如果您想将Sentry与CodePush一起使用,则必须将release和dist传递给Sentry.init。我们的建议是将它们存储在app.json中,或者您可以只使用package.json。这些值对于代码库的每个版本都必须是唯一的,并且与源映射上的版本完全匹配,否则它们可能没有符号化
例如:
Sentry.init({
dsn: YOUR_DSN,
release: '1.0',
dist: 'v1',
});
然后,当您要上载源地图时:
export SENTRY_PROPERTIES=./ios/sentry.properties
sentry-cli react-native appcenter \
account/project \
ios ./build/codePush \
--release-name "1.0" \
--dist "v1"
您的release
和dist
可以是任意字符串,但Sentry建议使用以下格式:
${BUNDLE\u ID}@${APP\u VERSION}+codepush:${DIST}
嘿,Jordan,你找到解决这个问题的方法了吗?我在我的react原生应用程序中使用Sentry,但我现在添加了codepush。我从没想过你提到的情况。一种想法是通过快车道控制代码推送的释放。在车道上,你可以手动上传源地图到sentry。嘿,面对同样的问题,你说同步是什么意思?