返回

随手记统一监控平台Focus设计解析

见解分享

Focus 是随手记自研的统一应用监控平台,支持公司所有业务系统和中间件的实时监控、历史监控、异常告警和服务诊断功能,并在投入使用后成功降低故障响应时间15%,系统可用率提升3%。 在刚开始设计之初,我们一直在思考两个问题:一、如何做好企业级的应用监控? 二、除了技术问题,在企业级应用监控平台建设过程中,还需要重点关注哪些问题?

  1. 如何做好企业级的应用监控?

我们把企业级应用监控平台的功能分为四类:数据采集、数据存储、数据分析、数据展示,而做好企业级应用监控,则需要着重考虑以下三个方面:

  • 采集数据的完整性
  • 采集数据的高效性
  • 采集数据的实时性
  1. 技术问题之外,还需重点关注哪些问题?

在应用监控平台的建设过程中,除了技术问题之外,我们还需要重点关注以下几个问题:

  • 使用成本和维护成本
  • 数据安全与合规
  • 平台的可靠性和可伸缩性
  • 技术和业务团队合作

Focus的设计目标

  • 支持海量数据实时采集
  • 快速接入、简单配置
  • 提供丰富的监控指标
  • 支持多维度监控告警
  • 提供可视化数据分析
  • 高可用、高可靠

Focus的实现

Focus的整体架构分为三个部分:数据采集层、数据存储层、数据分析展示层。

  • 数据采集层

  • 数据采集是应用监控平台的基础,Focus目前支持主流的Linux和Windows操作系统,以及多种应用程序和中间件的监控,例如Java、C++、Python、Node.js、MySQL、Redis、MongoDB、Kafka等。

  • 监控采集模块是Focus的核心组件之一,它负责从应用程序和中间件中收集监控数据,并发送到数据存储层。

  • 数据存储层

  • Focus采用MySQL作为数据存储引擎,主要用于存储采集的数据和告警历史记录。

  • 为了保证数据的可靠性和一致性,Focus采用了主从复制和读写分离的架构,主库负责数据的写入,从库负责数据的读取。

  • 数据分析展示层

  • Focus提供了一个Web管理界面,用户可以通过该界面查看监控数据、配置告警规则、接收告警通知等。

  • Focus还提供了丰富的API接口,用户可以将这些接口集成到自己的应用程序中,实现自定义的监控功能。

Focus在随手记的应用
Focus在随手记已经广泛应用于各个业务系统和中间件的监控,例如:

  • 随手记主站
  • 卡牛主站
  • 随手记开放平台
  • 随手记数据平台

Focus的应用效果

  • 故障响应时间降低15%
  • 系统可用率提升3%
  • 运维成本降低20%

Focus的未来发展
Focus的未来发展主要包括以下几个方面:

  • 支持更多的数据采集方式
  • 支持更多的数据分析和展示功能
  • 提高平台的可靠性和可伸缩性
  • 增强平台的安全性