火力地堡崩溃报告 - 并非所有的符号文件上传
我已经设置了火力地堡崩溃报告,包括运行脚本按照Firebase documentation,但有一个大问题:当我建立一个新的档案不是所有的符号文件上传。火力地堡崩溃报告 - 并非所有的符号文件上传
构建新的存档后,将两个UUID的符号文件上载到Firebase控制台;然而,我建立的档案有数十个UUID(我通过从iTunes Connect下载dSYM知道这一点)。
现在,我已经有一些崩溃报告进来了,没有一个是符号化的。我可以使用Firebase的batch-upload
脚本手动上传每个丢失的UUID的dSYM文件,但只允许将来的堆栈跟踪用符号表示。任何现有的崩溃对我来说实际上是无用的。
没有太多有关如何上传符号文件的Firebase文档,但从我收集的内容中,应该为每个新版本(包括归档版本)上传所有符号。
所以我想我的问题是:
- 我失去了一个设置步骤?
- 如果这是预期的行为,那是怎么回事?为什么只上传一些文件?
- 运行脚本是否输出日志?也许我可以查看它,看看是否有任何错误。
这里是我的脚本运行:
if [ "$CONFIGURATION" == "Release" ]; then
GOOGLE_APP_ID=<app-id>
"${PODS_ROOT}"/FirebaseCrash/upload-sym "${SRCROOT}"/<app>/Firebase/CrashReportingKey.json
fi
谢谢!
这听起来像你使用的是位码?有特别的指示。
有趣。我不认为我曾经注意过,但是当创建一个存档时,默认情况下会检查比特码框。然而,这引出了另一个问题:有没有一种方法可以使用'batch-upload'脚本来上传所有的dSYM文件,而不是一次一个?我可能会写一个脚本来完成它,但是如果内置了这个功能,它将会很好。 – cohenadair
我不这么认为,但是团队希望通过这种形式知道您的用例是一个功能请求:https ://firebase.google.com/support/contact/bugs-features/ –
很酷;我发送了我的请求。谢谢! – cohenadair
如果位码是在您的项目设置中启用
按照这些步骤仔细
- 解压缩后的DSYM文件夹添加到您的项目的主目录
- 这个脚本加入dsym文件夹
- 开放终端
- 光盘放入该项目的主目录的DSYM文件夹
- 运行此python脚本即 '蟒蛇batch_upload_files.py'
https://github.com/hanijazzar/Contributions/blob/master/batch_upload_files.py
我写了一个Python 2.7脚本上传我的dSYM的
我在项目源目录中创建了这个文件结构
Scripts/
|upload_syms.py
|syms/
|myVersion/
|FE98728-928748923B78-ASDASDF...
upload_syms。PY
from sys import argv
from os import listdir, system
version = argv[1]
symPath = 'syms/' + version
command = './../Pods/FirebaseCrash/batch-upload '
command += '-i ../App/Info.plist '
command += '-p ../App/GoogleService-Info.plist '
command += '../App/ServiceAccount.json '
command += symPath + '/'
symFiles = [f for f in listdir(symPath) if f != '.DS_Store']
for sym in symFiles:
print 'Upload ' + sym + '...'
system(command + sym)
print
print 'Uploaded ' + str(len(symFiles)) + ' dSYM files'
用于通过
终端python upload_syms.py myVersion
运行我不知道我的理解,当你问你在说什么“为什么只有部分上传的文件?” –
当我从iTunes Connect下载dSYM文件时,它包含几十个.dSYM文件(每个文件都是不同的UUID).zip存档。只有两个上传到Firebase。 – cohenadair