0%

iOS 性能监控项目启动

最近在做性能监控,思路大致是 hook 一些 cpu 耗时比较严重(layoutSubviews,cellForRow 等)的方法,获取方法调用的时间写入日志。后期对日志进行分析,得到优化的方向。

此文简单介绍一下整套系统的设计思路。基本没什么营养,仅供整理思路所用

设计原则

1.不能影响原有业务代码逻辑

我们只是一个观察者,不应该影响其他业务方正常的功能。

2.监控对性能影响尽可能小

显而易见,因为观察者效应,监控必然是会对原有性能有影响。这一点需要非常注意

3.最好不需要业务方书写代码

如果需要业务方自己书写代码,这一点非常麻烦。最好能做到无痕接入,尽可能通用、可配置。

4.面对不同用户提供不同程度的能力
使用这套性能监控的人可能很多。

  1. 产品
  2. QA
  3. RD

为这三种人提供分层次的能力。

5.最好有日志图表化的能力

日志数据分析是很重要的

6.数据一定要准确

一定要拿出可信度很高的数据,推动项目优化