夜莺-Nightingale
夜莺V6
项目介绍 架构介绍
快速开始
黄埔营
安装部署
升级
采集器
使用手册
API
数据库表结构
FAQ
夜莺专业版
开源生态
Prometheus
版权声明
第1章:天降奇兵
第2章:探索PromQL
第3章:Prometheus告警处理
第4章:Exporter详解
第5章:数据与可视化
第6章:集群与高可用
第7章:Prometheus服务发现
第8章:监控Kubernetes
第9章:Prometheus Operator
参考资料

夜莺专业版

Flashcat 有三个版本:开源版专业版企业版

  1. 开源版:免费的、代码公开的,可以在快猫星云网站下载编译好的版本,也可以在 GitHub 获取源代码编译;
  2. 专业版:是快猫星云对夜莺开源版本从功能、体验、安全、技术保障等方面加以增强的版本,具体介绍见本文
  3. 企业版:是快猫星云以开源夜莺监控(Nightingale)为内核打造的,从数据、到平台、再到场景真正一体化的统一观测平台,并将国内顶级互联网公司的可观测性实践和方法论融入产品中,是业务稳定性保障,特别是故障处理的真帮手。包含北极星、灭火图、事件墙、多维日志分析等商业模块,也包含专业版的所有能力;

本文重点介绍的是专业版相较开源版的功能增强。

开源版和专业版的对比概览

功能 开源版 专业版
告警管理 Metrics 指标阈值告警
Host 机器失联、时间偏移告警
ElasticSearch 日志告警
智能告警引擎(利用算法做智能告警)
规则管理:屏蔽规则、订阅规则、记录规则
活跃告警、历史告警管理
告警升级、告警聚合、关联查询、自定义通知模板
全局屏蔽、服务日历
通知渠道 内置支持阿里云电话、短信通知渠道
内置支持腾讯云电话、短信通知渠道
扩展数据源 SLS数据源(告警、看图)
CLS数据源(告警、看图)
InfluxDB数据源(告警、看图)
ClickHouse数据源(告警、看图)
Zabbix数据源(看图)
数据可视化 指标即时查询
指标快捷视图
自定义仪表盘+内置常用仪表盘
ElasticSearch 可视化
指标预聚合
巡检报告
机器管理 机器分组打标签
基础metadata信息展示
扩展metadata信息展示
categraf 采集规则管理下发
categraf 版本升级管理
基础设施 网络设备
拨测
Pingmesh
人员组织 用户管理、团队管理、业务组管理
角色管理、权限管理
系统配置 数据源管理
通知媒介、渠道、模板配置
单点登录(OIDC、CAS等)
操作审计 告警规则修改审计记录
软件质保 以上商业模块软件质保
开源夜莺技术支持 仓库:github.com/ccfos/nightingale
Categraf技术支持 仓库:github.com/flashcatcloud/categraf

下面着重从「告警引擎增强」、「数据采集增强」、「更多的数据源支持」、「标准化定价」几个方面,介绍夜莺专业版。


可视化增强


巡检报告

巡检报告功能可以帮助用户定期生成和发送夜莺仪表盘的快照报告,可以用于以下几种使用场景:

  • 对于业务负责人或管理层,可按天/周/月为其自动生成汇总的系统运行状态报告。
  • 对于需要对外提供SLA的服务,定期生成服务可用性报告,并发送给客户,提升客户信任。
  • 定期生成业务运营相关的仪表盘报告(如用户增长、销售额等),供决策者参考。
  • 将不同团队关注的仪表盘报告定期发送给相关人员,促进团队间的信息共享。

巡检报告效果截图如下 report

记录规则增强

专业版的记录规则,可以支持从多个时序库或者日志库中查询数据,然后生成新的时序指标,写入的时序库中,用来配置仪表盘和配置告警规则,可以在下面几个场景使用

  • 可以生成服务和基础组件的 SLA 指标,之后配置告警和仪表盘
  • 可以从业务系统的日志或者时序数据中提取关键的业务指标,如订单量、交易额等,作为一级核心指标,配置大盘和告警规则
  • 计算集群和模块维度的容量指标,配置相关的仪表盘和告警规则,从全局视角查看服务整体的容量水平

告警引擎增强


日志告警

ElasticSearch 通常用于存储日志,我们经常需要对异常关键字做告警,或者从日志中提取指标对指标做告警(很多业务没有直接埋点,使用日志来暴露各类指标),指标、日志相关的告警规则都可以集成到夜莺来统一管理。

image

告警规则的配置原理,就是填写 ElasticSearch 查询 API 所需要的各类参数,包括索引、查询条件等,夜莺就会拿着这些查询条件去查询 ElasticSearch,如果查询到了数据并触发了阈值,则告警。对于 ElasticSearch 触发的告警,在告警详情页面会提供快捷入口,方便地查看告警时刻相关的日志。

image

同样的,如果您使用的是ClickHouse或者阿里云SLS存储日志,也可以在夜莺中对来自这些系统的日志配置告警策略,原理和使用方法与ElasticSearch类似。

智能告警

有些指标具有很强的规律,而且不适合配置固定的阈值,此时就可以引入智能告警引擎,通过算法自动计算动态阈值,如果真实数据偏离动态阈值过多,则告警。比如下图灰色部分,就是通过算法预测的动态阈值范围,紫色的线是真实数据,在红圈位置因为有个下跌,跌破了动态阈值范围,就自动告警了。

image

智能告警引擎,会单独部署一个机器学习的训练模块,整个架构如图所示:

image

智能告警模块安装完成之后,在夜莺告警规则配置页面,会多出一个智能告警的选项,如下图所示:

image

选择智能告警之后,只需填写要监控的指标,不需要填写阈值,点击保存即可,之后在告警规则列表页,智能告警的规则右侧会有一个“训练结果”的按钮:

image

点击“训练结果”,可以进入训练结果详情页,点击曲线详情,可以看到曲线学习出来的动态基线。如果曲线偏离到基线之外,夜莺的告警引擎会发出告警通知。

image

告警全局屏蔽

使用全局屏蔽,管理员可以一键对整个平台的告警进行屏蔽,做一些计划性维护工作时,可以更方便地屏蔽告警。

image

告警日历

对于一些业务,会有交易日和非交易日的场景,在非交易日的时候,服务会关闭,期间不需要任何告警通知。此时可以使用服务日历的功能,配置好哪些是非交易日,在告警规则中关联了服务日历之后,只有在交易日告警规则才会生效,不再需要频繁地修改规则的生效时间。

image

image

内置阿里云腾讯云电话短信通道

开源版本也可以实现这个能力,不过需要自行编写 notify.py 脚本,专业版的用户只需要在页面配置认证信息就可以自动打通了,更加便捷,具体配置如下。

image

告警操作记录审计

有时告警规则改出问题,难以追根溯源,通过审计功能可以记录所有规则修改,知道何时新增、删除了规则,何时修改了规则以及修改了具体什么内容。并且可以对比改了具体哪些字段。

image


数据采集增强


采集规则集中管理和下发

开源版本的 Categraf 采集监控数据,是需要修改本地配置文件的,每次修改完成配置之后,还需要手工重启 Categraf 或者发送 HUP 信号,很不方便。专业版提供了页面上中心化管理采集策略的能力。比如 MySQL、Redis、进程、端口、Ping 等等所有插件的采集配置,都可以在页面上管理。

image

创建采集规则的时候,可以选择生效的机器范围,采集的插件,以及采集配置。右侧还会有个 Markdown 的提示信息,作为文档辅助。

image

设备元信息采集和展示

默认开源版本的机器列表,只有少量信息展示,如下图:

image

专业版本采集了更多更详细的机器 metadata 信息,点击某个机器即可看到详情。

image

网络设备数据采集模板化

开源的 Categraf 也提供了采集网络设备监控数据的能力,不过配置起来非常复杂,需要自己整理各种 OID,专业版的网络设备管理,提供了网络设备管理和监控数据采集两个能力,可以在网络设备页面添加待监控的网络设备,选择使用哪个采集agent、以及内置的采集模板,实现非常方便地采集设备的监控数据。

image

image

下图是采集模板样例:

image

拨测

拨测是一种用于监测和评估网络性能的技术。它通过模拟真实用户的行为,定期发送测试数据包到目标网络或服务器,并收集关于网络延迟、丢包率等指标的信息。

夜莺专业版的拨测功能,提供了 HTTP(s)ICMPTCPUDPWSDL等多种协议,对目标进行探测,可以从平均时延、连接超时、成功率等维度展示探测目标的可用性。

image

image

网络诊断 Pingmesh

Pingmesh 是一种用于测量和监控网络性能的技术,通过在一组通信对等体之间执行 Ping 测试来评估网络的可用性和延迟。

夜莺专业版的 Pingmesh 功能,提供了 TCPUDPICMP 三种协议,在设备之间进行互相探测,并绘制各个层面的连通性视图,从全局视角观测整个网络的连通性。

IDC之间连通性:

image

机柜之间连通性:

image

机器之间连通性:

image


更多的数据源支持


阿里云 SLS

SLS 是阿里云的日志产品,如果您有些数据是在 SLS,也可以在夜莺里配置管理告警规则(和 ElasticSearch 告警引擎的原理类似),可以在夜莺里绘图可视化。

image

ElasticSearch 中您要选择索引,在 SLS 中您要选择项目、日志库等信息,这是 SLS 特有的概念。

如果您使用的是腾讯云的日志服务CLS,也可以在夜莺专业版中找到相应的数据源。

InfluxDB

InfluxDB 和 ElasticSearch、SLS 的告警类似,也是输入一个查询条件获得输出,对输出的结果进行阈值判断,当然了,这里的查询条件需要使用 Influx 的 QL。

image

ClickHouse

ClickHouse 因为其优秀的性能被越来越多的公司采用,夜莺专业版也可以接入 ClickHouse 作为数据源,对 ClickHouse 的数据进行查询告警和可视化

image

Zabbix

Zabbix 作为老牌的监控工具,仍然被很多公司采用,作为机器、网络设备监控的首选工具,夜莺可以接入 Zabbix 作为数据源,目前可以对 Zabbix 数据做可视化,告警引擎尚未对接 Zabbix。

image


标准化定价


夜莺专业版,按照所部署的采集器数量,采用按年订阅制方式收费,该订阅费用包括以上所有功能的授权和相应的软件质量保障。

您可以直接联系我们或者在云市场下单。

开源版
Flashcat
Flashduty