【持续更新】HarmonyOS 鸿蒙Next 稳定性故障分析指导手册

发布于 1周前 作者 sinazl 来自 鸿蒙OS

【持续更新】HarmonyOS 鸿蒙Next 稳定性故障分析指导手册

一、概述

稳定性是应用的的重要质量属性,很大程度决定了应用的开发效率和交付成本,严重影响应用质量和体验。通常通过开发态和运行态的故障管理设计来提升版本质量。包括故障检测、故障分析、定位、恢复、质量度量等。故障种类异常繁多,产品和软件业务不同,故障的原因和表现也千差万别,分析定位疑难问题是对工程经验、能力、智慧的多重考验。

HarmonyOS 提供了统一的故障检测框架 FaultDetector,对系统基础故障,FaultDetector提供了精准的故障检测器,并生成清晰完备的故障特征日志。对于业务功能故障,则结合业务功能设计进行检测。检测故障类型包含以下七类故障类型:进程崩溃、应用卡死、资源泄露、踩内存、系统死机、整机重启、不开机。

HarmonyOS 提供的基础故障检测功能如下:

基础故障检测功能 Android HarmonyOS
Native进程崩溃检测及定位 Tombstone + Debuggerd + Dropbox Faultlogger
Java进程崩溃检测及定位 ART signal catcher + signal chain
JS进程崩溃检测及定位

Faultlogger

应用卡死检测及定位 ANR + Dropbox FreezeDetector
资源泄露检测及定位 MemTrack LeakDetector
地址越界检测及定位 ASAN MemCollector

而应用需要关注的问题类型,包括:

  1. JS_CRASH
  2. CPP_CRASH
  3. APP_FREEZE
  4. MEMORY_OVERLIMIT

下面文档会按照鸿蒙化过程中遇到的实际故障定位场景,总结提炼出来如下典型场景,可以提供给应用参考,涉及检测、定位指导。

分类 场景名称 简述
运行态 崩溃故障定位(CppCrash/JsCrash)
  1. HiAppEvent(订阅崩溃故障事件,获取日志)
  2. 崩溃日志规格
  3. 云侧解析日志(反混淆)
内存泄露定位
  1. HiAppEvent(订阅内存泄露故障事件,获取日志)
  2. 内存的信息(heapdump,内存分配栈)
  3. 通过HiDebug获取内存信息(PSS,RSS和heapdump)
CPU高负载异常定位
  1. HiAppEvent(订阅CPU占用率高故障事件,获取日志)
  2. CPU的信息(线程信息,perf栈)
  3. 通过HiDebug获取CPU资源信息
启动耗时长定位
  1. HiAppEvent(订阅启动耗时长故障事件,获取日志)
  2. 日志信息(hilog日志,Trace日志信息)
  3. 云侧解析日志(Trace日志)
滑动丢帧定位
  1. HiAppEvent(订阅滑动丢帧故障事件,获取日志)
  2. 日志信息(Trace日志信息)
  3. 云侧解析日志(Trace日志)
开发态

崩溃故障定位

CppCrash

JSCrash

  1. FaultLog(故障日志分析)
  2. ArkTs多线程检测工具
  3. ASAN(地址消毒器)
卡顿问题定位
  1. TimeProfiler

二、故障分析方法与典型案例

1. 分析 JS Crash(应用进程崩溃)

HarmonyOS Next Guides:分析JS Crash(进程崩溃)-故障分析-Performance Analysis Kit(性能分析服务)-调测调优-系统 | 华为开发者联盟 (huawei.com)

2. 分析 Cpp Crash(进程崩溃)

HarmonyOS Next Guides:分析CppCrash(进程崩溃)-故障分析-Performance Analysis Kit(性能分析服务)-调测调优-系统 | 华为开发者联盟 (huawei.com)

3. 分析 AppFreeze(应用卡死)

HarmonyOS Next Guides:分析AppFreeze(应用无响应)-故障分析-Performance Analysis Kit(性能分析服务)-调测调优-系统 | 华为开发者联盟 (huawei.com)

4. 分析 Resource Leak(资源泄露)

HarmonyOS Next Guides:分析Resource Leak(资源泄漏)-故障分析-Performance Analysis Kit(性能分析服务)-调测调优-系统 | 华为开发者联盟 (huawei.com)

PS:其他内容陆续更新中,请耐心等候…

2 回复
太赞了!稳定性测试需要分析稳定性问题,看博主的这一篇文章就够了,感谢大佬

针对您提出的《【持续更新】HarmonyOS 鸿蒙Next 稳定性故障分析指导手册》的需求,以下是一些专业的稳定性故障分析指导:

  1. 设备兼容性:确保所有设备在鸿蒙Next系统的升级名单中,并已更新至最新版本,这是稳定连接和运行的基础。
  2. 网络连接:稳定的网络连接是系统稳定运行的关键。确保设备连接到Wi-Fi或稳定的移动网络,并定期检查网络状态。
  3. 存储空间:系统需要足够的存储空间来运行,建议保持设备存储空间在30%以上,以避免因空间不足导致的系统崩溃或运行缓慢。
  4. 应用适配:部分应用可能还未完全适配鸿蒙Next系统,若遇到应用崩溃或无法运行的情况,请检查应用是否有更新版本,或等待开发者适配。
  5. 系统更新:及时更新系统以获取最新的修复和优化,同时,通过华为官方的反馈平台提交遇到的问题,以推动系统的持续改进。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部