线上应用bug跟踪查找-友盟统计
线上的应用只要用心点点都能发现些bug,连微信,QQ也不列外。但是bug中最严重的算是闪退了,这导致了用户直接不能使用我们的app。
我们公司是特别注重用户反馈和体验的,我们会定期打电话咨询用户的使用情况。我们也有自己的天使用户群,这些用户会跟我们及时的反馈应用的使用情况,bug情况,还有他们的需求。
用户不是技术人员他无法跟你清楚的描述怎么产生闪退的,于是我们需要一个bug统计的功能,我们公司采用友盟统计实现bug的记录。我们在iOS应用中植入友盟统计的功能,我也经常在查看友盟的错误统计和错误趋势排除项目中不稳定的点。用过友盟统计的都知道,我们只能看到一些16进制的地址,并不能清楚的知道到底哪里出现问题了。
友盟上的bug日志:
Application received signal SIGSEGV
(null)
((
CoreFoundation 0x2d539feb <redacted> +
libobjc.A.dylib 0x37db2ccf objc_exception_throw +
CoreFoundation 0x2d539f15 <redacted> +
TheFirstClass 0x2928a1 TheFirstClass +
libsystem_platform.dylib 0x383d9f8b _sigtramp +
libsystem_malloc.dylib 0x3839c267 <redacted> +
libsqlite3.dylib 0x3805bc67 sqlite3_exec +
libsqlite3.dylib 0x3805b9b5 sqlite3_exec +
libsqlite3.dylib 0x38094c6b sqlite3_prepare_v2 +
TheFirstClass 0xc020d TheFirstClass +
TheFirstClass 0xc0689 TheFirstClass +
TheFirstClass 0x103457 TheFirstClass +
TheFirstClass 0x103331 TheFirstClass +
TheFirstClass 0x18889d TheFirstClass +
libdispatch.dylib 0x382a07cb <redacted> +
TheFirstClass 0x188831 TheFirstClass +
TheFirstClass 0x10325d TheFirstClass +
TheFirstClass 0x1031e9 TheFirstClass +
TheFirstClass 0x10319d TheFirstClass +
libdispatch.dylib 0x382a260f <redacted> +
TheFirstClass 0x103157 TheFirstClass +
TheFirstClass 0x1209d TheFirstClass +
TheFirstClass 0x115a3 TheFirstClass +
TheFirstClass 0x10acf TheFirstClass +
TheFirstClass 0x16c03f TheFirstClass +
TheFirstClass 0x293ef TheFirstClass +
TheFirstClass 0x79d5b TheFirstClass +
libdispatch.dylib 0x3829a833 <redacted> +
libdispatch.dylib 0x3829a81f <redacted> +
libdispatch.dylib 0x382a149f <redacted> +
CoreFoundation 0x2d5048f1 <redacted> +
CoreFoundation 0x2d5031c5 <redacted> +
CoreFoundation 0x2d46df0f CFRunLoopRunSpecific +
CoreFoundation 0x2d46dcf3 CFRunLoopRunInMode +
GraphicsServices 0x323c6663 GSEventRunModal +
UIKit 0x2fdb916d UIApplicationMain +
TheFirstClass 0x122f01 TheFirstClass +
libdyld.dylib 0x382bfab7 <redacted> +
) dSYM UUID: 1ED274B4-8D63---FB884B9E88DA
CPU Type: armv7
Slide Address: 0x00004000
Binary Image: TheFirstClass
Base Address: 0x000bc000
bug查找步骤如下:
1.为了跟踪友盟的bug日志,我们必须在应用打包的时候同时保存打包的“XX.xcarchive”,显示XX.xcarchive的包内容,然后找到dSYMs文件夹下的“项目名.app.dSYM”放到桌面。
2.显示“项目名.app.dSYM”的包内容,找到“项目名”文件同样拷贝到桌面。
3.打开终端
a. 输入 cd deskTop
b. dwarfdump --1ED274B4-8D63-3247-8168-FB884B9E88DA(这是dSYM UUID) 项目名.app.dSYM
c. dwarfdump --arch= armv7(armv7这是CPU Type) --lookup 0xc020d(0xc020d这是错误信息的地址) /Users/你的电脑/Desktop/项目名
通过上述的步骤就能定位到崩溃的代码,至于为什么这行代码产生崩溃,这就需要自己去分析解决了。这是我总结的查找友盟上bug的简便方法,使用终端不用下载解析bug的图像化插件,简单几句终端代码也不麻烦。
线上应用bug跟踪查找-友盟统计的更多相关文章
- 根据友盟统计错误分析线上的崩溃-b
登陆友盟官网找到友盟统计,找到你iOS平台下你所属的APP(图1) 图1 点击进去会出现当日错误列表,选择你发生错误的日期(图2) 图2 我们可以看到,这一天中出现了两个错误,每个错误出现在不同的时间 ...
- 关于线上的bug什么时候修复的思考
这里系统专门指的是那种用户量大的系统,比如有几百万或者上千万的注册会员.因为小系统因为用户量少,不存在这种思考,考虑有时候是多余的.另外还有内部系统,给自己公司内部人员使用的,即便是出现了问题,也不会 ...
- 一个线上程序bug,由通用补数程序引起
下游发现接口可用率非100%,马上线上查看,发现数据在有些情况下通用补数的数据是空, 有20%的用户是没有相应偏好等的数据的,需要通用补数来补数,结果通用补数没有数据. 通用补数数据的检查报警时必须要 ...
- 线上出bug了?别怕,这么定位!
摘要: Source Map还是很神奇的. 原文:线上出bug了?别怕,这么定位! 公众号:前端小苑 Fundebug经授权转载并修改,版权归原作者所有. 工作中,生产环境代码是编译后代码,搜集到报错 ...
- 线上调试bug
在以往的工作中,线上一有bug,就需要把文件弄到本地来改,但经常会碰见本地环境又和线上不一样,导致调试困难,闭着眼睛改好之后传到线上去看对不对,不对的话又要改,循环往复,要多麻烦就有多麻烦啊. 今天给 ...
- 被产品经理怼了,线上出Bug为啥你不知道
前言 前几天跟读者聊天,他说被产品经理给怼了.原因是线上出 Bug 了,最后是客户反馈才知道的. 我就问他:你们是不是没做监控? 读者:我们是刚成立的创业团队,目前最重要的就是堆功能,很多基础设施都没 ...
- Android 友盟统计的集成与使用(包含多渠道打包配置)
前言 app上线后,一般公司都希望跟踪app在市场上的使用情况.包括新增用户.活跃用户.渠道信息.错误信息等,还有例如商城类的app,需要跟踪用户最喜欢浏览哪种类型的店铺或商品.这些都可以通过集成友盟 ...
- android开发系列之友盟统计集成
相比大家都遇到这种情况,当我们的app上线之后,我们想要实时的跟踪了解到app里面的bug情况.新增用户情况.用户相关的行为属性情况等.但是如果自己在app里面去开发集成这些功能,一方面开发工作量还挺 ...
- UmengAppDemo【友盟统计SDK集成以及多渠道打包配置,基于V7.5.3版本】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这里只是记录下集成友盟统计SDK以及简单配置多渠道打包的步骤.所以1.该Demo不能运行:2.配置多渠道打包只是一种简单的写法,具体 ...
随机推荐
- hdu 2191 珍惜现在,感恩生活
链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=2191 思路:多重背包模板题 #include <stdio.h> #include ...
- PHP中的date()函数
d 月份中的第几天,有前导零的 2 位数字 01 到 31 D 星期中的第几天,文本表示,3 个字母 Mon 到 Sun j 月份中的第几天,没有前导零 1 到 31 l ("L&q ...
- C++ Tips and Tricks
整理了下在C++工程代码中遇到的技巧与建议. 0x00 巧用宏定义. 经常看见程序员用 enum 值,打印调试信息的时候又想打印数字对应的字符意思.见过有人写这样的代码 if(today == MON ...
- centos 6.6 系统中配置sendmail和dovecot
网上介绍sendmail的文章千百种,很少有跟着做下来一次成功的.多少都有些说的不准确的地方. 我给大家共享一下我经过实验环境测试,完全可行的方法. 1.软件准备 操作系统:centos6.6我选择c ...
- html视频播放器的代码 及其参数详解
播放视频最实用的一段代码是: 程序代码 <"></embed></object> 其他的看参数自己修改吧 .avi格式 代码片断如下: 程序代码 < ...
- [UWP]创建自定义VisualState Trigger
这篇博客将介绍在UWP程序中如何创建和使用自定义VisualState Trigger. 上一篇博客中介绍了如何使用AdaptiveTrigger.目前UWP内置的StateTrigger只有Adap ...
- POJ 2718 Smallest Difference【DFS】
题意: 就是说给你一些数,然后要求你使用这些数字组成2个数,然后求他们的差值最小. 思路: 我用的双重DFS做的,速度还比较快,其中有一个很重要的剪枝,若当前搜索的第二个数后面全部补零与第一个数所产生 ...
- setInterval的停止与启动
最近写代码,需要停止interval之后再重新启动,开始使用代码如下,发现无法重新启动 function func(){console.log("print")} //定时任务 v ...
- 在CHROME里安装 VIMIUM 插件, 方便操作
VIMIUM 插件使用方法 VIMIUM 命令列表 网页导航 j, :向下滚动网页 k, :向上滚动网页 h : 向左滚动 l : 向右滚动 gg : 滚动到网页头部 G : 滚动到网页底部 :向上翻 ...
- 通过sql server 连接mysql
图文:通过sql server 连接mysql 1.在SQL SERVER服务器上安装MYSQL ODBC驱动; 驱动下载地址:http://dev.mysql.com/downloads/con ...