夜莺项目发布v6.0.2版本,增强日志查看能力
简介
夜莺项目发布v6.0.2版本,增强了一些功能,修复了一些bug,访问夜莺下载中心下载体验。
升级内容
1. 仪表盘图表面板支持检查查询数据和图表配置
这是一个调试功能,很多小伙伴对于通过 chrome 开发者工具查看 HTTP 请求和响应不太熟悉。这个版本我们内置了这个调试功能,方便大家调试。
右键大盘图表,可以看到【排查】按钮,点击后会弹出一个窗口,里面包含了图表的配置和request、response。
通过这个调试功能,我们可以轻松看到请求的 promql,可以看到是instant query还是range query,可以看到返回的response,当然也可以看到图表的配置。
2. 订阅规则支持订阅业务组
这是一个非常重要的功能。有些公司对夜莺做了二次开发,把告警接收人和业务组强制绑定在一起,其实不够灵活,最灵活的方式是通过订阅规则,不过之前的版本,订阅规则只能根据事件标签和级别做订阅,v6.0.2版本开始,支持订阅业务组,更加灵活。比如我们让业务组Bigdata-Hadoop、Bigdata-ClickHouse的所有告警发给Bigdata团队,也可以根据事件级别做通知媒介的区分。
3. Elasticsearch 即时查询支持快速匹配或排除字段值
在日志的即时查询页面,选中索引之后,左侧会出现「可选字段」,点击字段名,会弹出一个浮层,展示了这个字段的前5个值,以及各个值出现的次数比例,每个值右侧有加减号,点击加号,就可以增加一个匹配过滤条件,点击减号,就可以增加一个排除过滤条件。
4. 增加 FormatDecimal 模板函数,可设置 TriggerValue 保留几位小数
告警通知模板中通常会展示告警时候的值,有的时候这个值表示一个 time duration,有的时候表示一个 size,有的时候这个值表示一个百分比,需要对这个值做一些格式化,才能以人类更易读的方式展示。
本次增加了 FormatDecimal 模板函数,再加上之前的 HumanizePercentage、HumanizeDurationInterface、Humanize1024 等函数,可以满足大部分的格式化需求了。详细的模板函数列表参看这里:https://github.com/ccfos/nightingale/blob/main/pkg/tplx/tplx.go
5. 调整 Loki 数据源校验逻辑
Loki 的查询接口和 Prometheus 是兼容的,所以,可以把 Loki 作为 Prometheus Like 数据源。于是,就可以在夜莺里配置 Loki 告警了。之前的版本引入了数据源添加时的校验逻辑,对 Loki 场景考虑欠妥,v6.0.2 版本开始,调整了 Loki 数据源的校验逻辑,支持 Loki 数据源添加了。
更多升级内容参考:https://flashcat.cloud/download/nightingale/
夜莺简介
夜莺Nightingale是中国计算机学会托管的开源云原生可观测工具,最早由滴滴于 2020 年孵化并开源,并于 2022 年正式捐赠予中国计算机学会。夜莺采用 All-in-One 的设计理念,集数据采集、可视化、监控告警、数据分析于一体,与云原生生态紧密集成,融入了顶级互联网公司可观测性最佳实践,沉淀了众多社区专家经验,开箱即用。
github地址:https://github.com/ccfos/nightingale 欢迎大家 star 收藏。当前 star 数量 6.7k,fork 数量 1.1k,docker pull 数量 25k,已经发布了 100 多个 release,快速发展中。文档地址:n9e.github.io
夜莺功能特点
- 统一接入各种时序库:支持对接 Prometheus、VictoriaMetrics、Thanos、Mimir、M3DB 等多种时序库,实现统一告警管理
- 专业告警能力:内置支持多种告警规则,可以扩展支持所有通知媒介,支持告警屏蔽、告警抑制、告警自愈、告警事件管理
- 高性能可视化引擎:支持多种图表样式,内置众多Dashboard模版,也可导入Grafana模版,开箱即用,开源协议商业友好
- 无缝搭配 Flashduty:实现告警聚合收敛、认领、升级、排班、IM集成,确保告警处理不遗漏,减少打扰,更好协同
- 支持所有常见采集器:支持 Categraf、telegraf、grafana-agent、datadog-agent、各种 exporter 作为采集器,没有什么数据是不能监控的
- 一体化观测平台:从 v6 版本开始,支持接入 ElasticSearch、Jaeger 数据源,实现日志、链路、指标多维度的统一可观测