夜莺 v7.5 是一次以体验优化为主的版本更新。重点变化集中在两个方向:告警规则页面增加状态联动和筛选能力;模板中心仪表盘支持通过 UUID 查询展示,方便在不同环境中配置稳定的下钻链接。
核心要点
- 告警规则列表新增“状态”列,可以从规则直接查看相关告警事件。
- 告警规则列表新增“启用状态”过滤项,并增加“显示名”字段。
- 模板中心仪表盘 URL 支持按 UUID 查询,便于跨环境保持下钻链接稳定。
- 站点设置、LDAP、告警列表、Prometheus 即时查询、屏蔽规则、SMTP 等细节也做了优化和修复。
- 从 v7.4.1 升级到 v7.5 时,通常替换二进制和 integrations 目录即可;容器部署可拉取新镜像后重启。
夜莺监控介绍
夜莺监控是一款开源云原生观测分析工具,采用 All-in-One 的设计理念,集数据采集、可视化、监控告警、数据分析于一体,与云原生生态紧密集成,提供开箱即用的企业级监控分析和告警能力。夜莺于 2020 年 3 月 20 日,在 github 上发布 v1 版本,已累计迭代 100 多个版本。
夜莺最初由滴滴开发和开源,并于 2022 年 5 月 11 日,捐赠予中国计算机学会开源发展委员会(CCF ODC),为 CCF ODC 成立后接受捐赠的第一个开源项目。夜莺的核心研发团队,也是 Open-Falcon 项目原核心研发人员,从 2014 年(Open-Falcon 是 2014 年开源)算起来,也有 10 年了,只为把监控这个事情做好。
夜莺监控截图


夜莺项目代码
夜莺项目已收获 9300 多 github stars,1400 多 forks,120 多 contributors 参与其中,欢迎大家在 GitHub 上关注夜莺项目,及时获取项目更新动态,有任何问题,也欢迎提交 issues,以及提交 pull requests,开源社区需要大家一起参与才能有蓬勃的生命力。
夜莺本次更新内容
1. 告警规则列表页面更新
告警规则列表页表格新增“状态”列。点击状态后,可以查看对应规则关联的告警事件,减少从规则页面切换到事件页面再手工筛选的步骤。
这一处改动主要解决两个问题:
| 更新点 | 解决的问题 |
|---|---|
| 状态列可点击 | 快速查看某条规则触发了哪些告警事件 |
| 启用状态过滤项 | 按启用或停用状态筛选规则 |
| 显示名字段 | 看清楚更新规则的用户显示名 |

鼠标点击状态图标,右侧会展示侧拉板,方便查看这个告警规则触发了哪些告警事件。
2. 优化模板中心仪表盘的 URL
模板中心的仪表盘页面 URL 支持根据 uuid 查询展示,方便配置仪表盘中的下钻链接。
模板中心的每个仪表盘导入到不同公司的环境时,自动生成的 ID 可能不同。如果仪表盘之间通过环境内 ID 相互跳转,就无法保证跳转地址在不同环境中都正确。v7.5 支持根据 UUID 查询展示仪表盘,用 UUID 作为稳定标识,更适合模板中心里的下钻链接。
比如在“集成中心 -> 模板中心 -> Linux”类别下找到机器台账表格视图:

打开台账仪表盘后,点击 Table 中每条记录右侧的“详情”按钮,或者点击上方蜂窝图里的机器,会跳转到对应的机器详情仪表盘。因为跳转依赖 UUID,而不是各环境自动生成的 ID,所以更容易在不同环境中保持一致。

如果想查看这个跳转如何实现,可以把台账仪表盘导入自己的业务组后再编辑。内置仪表盘也能编辑,但直接编辑大 JSON 不够直观。


导入后,进入自己的业务组查看仪表盘详情,并编辑 Table:


链接配置中通过指定详情仪表盘的 UUID 实现跳转。要获取目标仪表盘的 UUID 和地址,可以进入模板中心,找到对应仪表盘并打开,URL 中即可看到。

3. 其他改进项
- feat: 站点设置新增 print_access_log 和 print_body_paths 设置项,可以控制是否开启 access log 日志,方便排查问题
- feat: LDAP 支持配置多个 BaseDn, 使用 | 分割
- refactor: 告警列表页搜索条件修改保留策略,关闭标签页之后清空
- refactor: 告警事件详情页的通知记录里展示接口返回信息
- refactor: Prometheus 即时查询 table 视图 step 计算优化修剪掉毫秒
- refactor: 屏蔽规则,屏蔽时间过期之后,不再删除屏蔽规则
- fix: 仪表盘表格图导出 csv 的数据没有处理 overrides 的设置问题
- fix: 业务组被删除后没有更新缓存的业务组信息问题
- fix: 指标视图的过滤条件无法取消选择问题
- fix: SMTP 配置更新之后,需要重启才能生效的问题
- fix: 删除机器之后,重新添加机器,机器自动归属到之前的业务组问题
- docs: 增加 ipmi 仪表盘模板
如何更新
从上个版本 v7.4.1 升级时,只需要替换二进制以及 integrations 目录。
| 部署方式 | 升级动作 | 说明 |
|---|---|---|
| 二进制部署 | 替换 n9e 二进制和 integrations 目录 | n9e-edge 不是必须替换;如果不升级 n9e-edge,只是无法使用页面控制 print_access_log 的功能,其他功能不受影响 |
| 容器部署 | 拉取最新镜像并重启容器 | 按现有容器部署方式滚动或重启即可 |
另外
近期会集中优化一波小功能点,不会有大功能更新了,大功能计划放到 v8 版本里。v8 会重点优化告警通知的逻辑,并且会提供 ElasticSearch、ClickHouse 等的告警引擎能力,敬请期待。
常见问题
Q1:v7.5 最值得升级的点是什么?
A:如果你经常从告警规则追查告警事件,或者在模板中心仪表盘之间配置下钻链接,v7.5 的规则状态联动和 UUID 跳转会直接减少操作成本。
Q2:为什么仪表盘下钻要改用 UUID?
A:模板仪表盘导入到不同环境后,系统自动生成的 ID 可能不同;UUID 更适合作为跨环境稳定标识。
