快速入门
业务系统分析
创建业务系统
分析业务系统
Web应用性能管理
理解应用性能管理
管理应用列表
查看应用概览
追踪关键事务
追踪请求详情
分析单个请求
分析单次请求快照
追踪外部服务
分析消息队列
追踪数据库详情
追踪NoSQL详情
追踪错误&异常信息
对比分析
设置应用
后台任务性能管理
后台任务概述
管理后台任务列表
查看后台任务概览
追踪慢后台任务
追踪单次慢后台任务
追踪错误信息
运维者视图
创建运维视图
分析运维视图
设置运维视图
移动应用性能管理
理解移动应用性能管理
移动应用概览
用户行为分析
网络分析
Webview性能分析
运营分析
地域分析
崩溃分析
ANR/卡顿分析
组合分析
劫持分析
交互分析
移动拓扑分析
移动应用设置
浏览器性能管理
理解浏览器性能管理
向前端页面注入JS
查看浏览器项目列表
查看Web页面性能概览
按区域分析Web页面性能
按网页分析Web页面性能
按浏览器分析Web页面性能
按运营商分析Web页面性能
多维度追踪单页面请求性能
分析Web页面Ajax请求
分析Web页面JS错误
主机性能管理
理解主机性能管理
管理主机和服务列表
查看主机概览
分析服务器性能
分析Apache性能
分析Redis性能
分析MySQL性能
分析Memcache性能
分析Tomcat性能
分析MongoDB性能
分析Nginx性能
分析Weblogic性能
分析Oracle性能
分析SQL Server性能
分析PostgreSQL性能
分析Varnish性能
分析CouchBase性能
分析Java虚拟机性能
分析Docker性能
设置主机信息
告警管理
概述
设置应用/移动告警/浏览器告警
设置主机告警
查看并处理告警
管理告警
设置URL回调
报告管理
概述
查看在线报告
预定邮件报告
创建自定义报告
账户管理
用户权限说明
管理部门和用户
设置个人信息

为了更好地解析崩溃信息,快速准确地定位用户App发生崩溃的具体代码位置,需要上传对应版本的符号表到透视宝云端,对App发生崩溃的程序堆栈进行解析和反编译,从而还原崩溃堆栈。

iOS应用符号表说明

Android应用符号表说明

上传符号表


iOS应用符号表说明

要上传符号表,首先您需要在应用工程中找到对应的文件。对于iOS应用,符号表是指应用工程的dYSM文件([Appname].app.dYSM文件), 生成dYSM文件的过程如下:

1、 打开应用工程,在工具栏中点击工程名称并选择“Edit Scheme”,如下图所示。

1462849034760603.png

2、 在打开的对话框中,将工程由Debug模式转为Release模式后关闭对话框,如下图所示。

1462849053356144.png

3、 编译工程,使用Command + B快捷键build工程。

4、 编译成功后,在应用工程的Products目录下,右击[Appname].app文件并选择“Show in Finder”,如下图所示。

1462849076946091.png

5、 在打开的对话框中可以看到[Appname].app.dSYM文件,该文件即为用于解析崩溃信息的符号表,您可以在透视宝云端上传该文件。

需说明的是,当您的Archive模式为Build时,需要通过以下方式找到生成的dSYM文件:

选择“Window→Organizer”,打开应用工程的Archive列表,如下图所示。

1462849105199788.png

选择您的App,右击Archive文件并选择“Show in Finder”,如下图所示。

1462849122342183.png

在打开的对话框中,右击[Appname time].xcarchive文件并选择“显示包内容”,如下图所示。

1462849140862742.png

在打开的对话框中,进入dSYM目录可以找到[Appname].app.dSYM文件,该文件即为用于解析崩溃信息的符号表,您可以在透视宝云端上传该文件。


Android应用符号表说明

要上传符号表,首先您需要在应用工程中找到对应的文件。对于Android应用,解码不同类型的崩溃信息,需要上传不同的崩溃解码文件。

解码Java Crash

如果要解码Java类型的崩溃信息(Java Crash),只需要上传应用工程的mapping文件。以Eclipse开发环境为例进行说明:

在应用工程根目录的proguard文件夹中找到mapping.txt文件,该文件即为用于解析崩溃信息的符号表,您可以在透视宝云端上传该文件。注意,proguard文件夹是为工程设置混淆后自动生成的。

解码Native Crash

如果要解码Native类型的崩溃信息(Native Crash),还需要上传应用工程的Debug so文件。

请注意,您必须提前在应用工程中集成透视宝提供的Cloudwise NDK(详细说明见“配置App工程”中的内容),编译应用工程后将对应的Debug so文件打包为zip包进行上传。

——在Eclipse开发环境中

默认情况下,Debug SO文件是位于应用工程的obj/local/CPU架构目录下的libCreateNativeCrash.so文件,如下图所示。

上传前,需删除local目录中无关的文件夹和文件,只保留CPU架构目录和对应的Debug SO文件(libCreateNativeCrash.so),然后打包为zip包(local.zip),zip包的目录结构为<local-架构-Debug SO文件>,如下图所示。

您可以在透视宝云端上传该zip包,用于解析和还原崩溃信息。

为保证正常解析和还原崩溃信息,上传zip包的目录结构必须与要求的完全一致。当然,您可以根据自己的需要上传某一个架构的Debug SO文件(libCreateNativeCrash.so),只要确保目录结构一致即可。

——在Android Studio开发环境中

默认情况下,Debug SO文件是位于应用工程的obj/local/CPU架构目录下的libCreateNativeCrash.so文件,如下图所示。

1462849236773664.png

如果是Debug编译,默认情况下,Debug SO文件的具体的路径为:

<子项目文件夹>/build/intermediates/ndk/debug/obj/local/<架构(Architecture)>/

如果是Release编译,Debug SO文件的具体的路径为:

<子项目文件夹>/build/intermediates/ndk/release/obj/local/<架构(Architecture)>/


说明:Android Sutdio中"子项目"即Module,如app。

上传前,需删除local目录中无关的文件夹和文件,只保留CPU架构目录和对应的Debug SO文件(libCreateNativeCrash.so),然后打包为zip包(local.zip),zip包的目录结构为<local-架构-Debug SO文件>,如下图所示。

您可以在透视宝云端上传该zip包,用于解析和还原崩溃信息。

为保证正常解析和还原崩溃信息,上传zip包的目录结构必须与要求的完全一致。当然,您可以根据自己的需要上传某一个架构的Debug SO文件(libCreateNativeCrash.so),只要确保目录结构一致即可。


上传符号表

目前,透视宝支持用户手动上传用于解析和还原崩溃信息的符号表。使用管理员角色的账户登录透视宝,在移动应用的“设置→上传符号表”页面上传符号列表,如下图所示。

1467708676887335.png

要上传符号表,首先需新建应用版本。点击<新建版本>按钮新建一个应用版本,选择应用的类型并设置应用版本号,保存后可上传符号表。

点击<上传>按钮上传应用对应版本的符号表,上传成功后其状态显示为“已上传”。

1467708709254088.png

点击<删除>按钮可删除对应的应用版本及符号表。