监控指标
常用的监控指标包括:
- 延迟:比如接口的响应时间、访问缓存和数据库的响应时间等
- 吞吐量
- 错误数
- 饱和度:比如CPU使用率、内存使用率、磁盘使用率等
常用组件监控指标:
监控数据采集
一般的,可以通过Agent、埋点、日志等方式来采集监控指标数据。
监控数据存储和处理
一般的,我们会通过消息队列承接监控数据。监控数据一方面会写入ElasticSearch,另一方面会通过流计算中间件来解析、聚合运算,然后写入时间序列数据库并形成报表对外展示。常见的报表包括:访问趋势报表(用来展示服务的整体运行情况)、性能报表(用来分析资源或者依赖的服务是否出现问题)、资源报表(用来追查资源问题的根本原因)。
应用性能管理
应用性能管理(Application Performance Management, APM)指的是对应用各个层面做全方位的监测,核心关注点是终端用户的使用体验,即端到端整体链路上的性能情况。