App“照妖镜”:随时监控你的应用质量

类似崩溃这样的App性能问题是造成用户流失的罪魁祸首之一,也是反映App质量最基本和最关键的一环。App 的性能问题还包括 络请求错误或超时、响应速度慢、列表滚动卡顿、流量大、耗电等等。

这其中崩溃带来的影响是最为严重的。相关数据显示,当iOS的崩溃率超过0.8%,Android的崩溃率超过0.4%的时候,活跃用户有明显下降态势。它不仅会造成关键业务中断、用户留存率下降、品牌口碑变差等负面影响,而且会直接带来卸载和流失。

定位、捕获丰富错误问题

导致 App 性能低下的原因有很多,除去设备硬件和软件的外部因素,其中大部分是开发者错误地使用线、系统函数、编程范式、数据结构等导致的。即便是最有经验的程序员,也很难在开发时就能避免所有导致性能低下的“坑”,因此解决性能问题的关键是在于能不能尽早地发现和定位和捕获这些错误。

以ANR捕获为例,U-APM的捕获实现原理是:系统的 system_server 进程在检测到 App 出现 ANR 后,会向出现 ANR 的进程发送 SIGQUIT (signal 3) 信 。正常情况下,系统的 libart.so 会收到该信 ,并调用 Java 虚拟机的 dump 方法生成 traces。在使用 U-APM SDK 后,SDK 会拦截 SIGQUIT。在出现 ANR 时,libcrashsdk.so 会优先收到信 ,并生成 traces 和 ANR 日志。

图:U-APM SDK ANR 捕获原理,红色线为 U-APM SDK 处理 ANR 信 和生成 ANR 日志的流程,紫色线为系统生成 ANR traces.txt 的流程。

实时监控告警与修复验证

作为App开发者,相信大家一定遇到过类似的尴尬问题:故障永远都是你的客户告诉你的,而在什么时候发生的,你也无法确定,只能通过客户的反馈倒推时间节点,最后从错误日志中得到相对完整的日志信息。

那开发者如何掌握主动权日志有可能会有人漏记录,平均修复时间(MTTR)更不用想了,需要从 0.1 开始定位,先看 App是哪个模块 错,再猜测是哪个服务导致,再打开链路追踪系统,或是日志平台等。稍微复杂些的,排查来来往往基本都是半小时、一小时以上……

破局的核心点就是把监控告警的生态圈建设好。整个通路的触达渠道需要即时有效,最好能覆盖企业办公中主要消息流通的渠道。以友盟+应用性能监控平台U-APM为例,涵盖的触达渠道就有邮件、钉钉、企业微信、飞书等等。

其中后三者可以通过webhook的方式直接将监控告警发送到群组里,让组内的研发同学第一时间获取到有效信息,下图中展示了U-APM中的告警计划设置界面,可以设置监控的错误类型、阈值、版本、触达方式。

行为日志是由自动采集的页面信息组成的,方便开发者根据用户崩溃时的前项页面路径,来定位和发现崩溃现场。用户错误细查可以根据用户的账 (开发者上传)搜索所选时间范围内的所有错误、日志以及趋势图。可以根据用户的崩溃日志复现崩溃。告别去服务端捞Log的尴尬,节省跟用户沟通复现崩溃的时间和人力成本,同时还可以避免崩溃无法复现的窘境。

App“照妖镜”:随时监控你的应用质量

如何选好“照妖镜”strong>

市面上性能监测的产品其实并不多,能统计多维度crash,涵盖多种ANR,并有告警功能的就更少了一些。友盟+的U-APM应用性能监控平台其实完全可以满足开发者性能监控的各类问题。

U-APM的SDK主要是基于阿里巴巴 UC 内核团队强大的技术及友盟+超强的错误捕获能力。除通用的设备、系统、版本分布外,U-APM还支持运营商、地域、页面、时长分布,明确错误影响用户范围以及特征。

相较于其他市面上的性能监控产品,U-APM还提供完整的产品咨询及专业的客户服务,这也就为支持App长期、稳定、可靠的数据服务提供了更坚实的保障。

产品使用请点击左下角【阅读原文


bsp;更多精彩内容请点击:

【干货】那些上亿流水的游戏App都用了哪些降本提效工具r>

万万没想到!爆款抖音小游戏的秘诀竟然是……

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览93767 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月8日
下一篇 2021年1月8日

相关推荐