-
支持多种类型的监控对象,如 Linux 系统、MySQL、Redis、Kubernetes、容器等,通过安装不同的 exporter 来适配不同的数据源;
-
支持自定义查询语言 PromQL,可以对收集的指标数据进行复杂的分析和聚合;
-
支持与 Grafana 集成,可以通过导入模板或自定义 Dashboard 来展示监控数据;
-
支持与 Alertmanager 集成,可以根据预定义的规则发送告警通知。
前些年,我们最为常用的就是与Grafana的集成,从而构建企业的监控仪表盘并通过Alertmanager对告警信息进行过滤和处理,从而解决告警风暴的问题。PromQL 是普罗米修斯的查询语言,可以用来选择和聚合时序数据,从而实现基础指标数据的深度加工。利用这些能力,普罗米修斯不仅仅可以作为普通监控工具来使用,而且可以注入运维团队的运维经验。这些技术能力的构建和我们开发D-SMART是有异曲同工的效果的。只是D-SMART从研发之初就把监控放在一个很小的位置,主要面向运维知识自动化能力的构建。可观测性能力建设比监控能力建设具有更大的挑战性,这一点可以从以下几个方面来分析:
- 意外数据不可见:未能正确构建关键数据集导致某些关键数据在重要事件发生时不可见,这可能会导致错过关键条件,无法正确预警或者无法正确定位故障根因;
- 关键数据缺失:在建设监控系统的时候并非所有重要信息都被收集,大多数是因为可观测性系统建设者缺乏相关经验或者建设之初仅仅从监控入手;
- 数据格式复杂性导致的数据割裂:当同一类型的数据以不同的格式来自不同的来源时,可能很难收集正确的信息并解释可用的信息;需要一种将信息结构化为标准形式的有组织的策略,以确保最佳的可观察性处理,并且能够把不同格式的原始数据解释为统一的可观测性模型体系。
数据库的可观测性能力可以应用于十分广泛的领域,帮助DBA清晰的了解数据库的运行状态,并且能够辅助完成大量的复杂工作。下图是我总结的一张数据库可观测性能力的图。 今天一早要出差,所以只能简单的聊聊,关于这个演讲的完整内容,等我出差回来,录一段视频分享给大家吧。