夜莺监控发布 v8.beta5 版本,优化 UI,新增接口认证方式便于鉴权

夜莺监控 v8.beta5 版本新增用户自定义 token 接口鉴权、时序数据转发 Kafka、仪表盘 annotations 与阈值样式优化,并调整告警规则数据源筛选 UI。

作者 快猫运营团队

夜莺监控 v8.beta5 版本主要围绕接口鉴权、数据转发、仪表盘体验和告警规则配置体验做增强。对使用夜莺 API 做自动化集成、把时序数据转发到 Kafka,或经常配置仪表盘和告警规则的团队,这个版本值得重点关注。

核心要点

  • 夜莺 v8.beta5 新增 X-User-Token 鉴权方式,API 调用不必每次先走 login 接口获取 token。
  • 新版本支持将接收的时序数据转发到 Kafka,方便接入后续数据处理链路。
  • 仪表盘折线图新增 annotations、右对齐表格图例、百分比阈值模式和更多阈值样式。
  • 告警规则的数据源筛选 UI 做了调整,数据源类型显示更直观。
  • 仪表盘配置改成手动保存模式,升级后配置操作习惯需要稍作调整。

夜莺监控是什么

夜莺监控,英文名字 Nightingale,是一款侧重告警的监控类开源项目。类似 Grafana 的数据源集成方式,夜莺也可以对接多种既有数据源;不同的是,Grafana 更侧重可视化,夜莺更侧重告警引擎。

把 Prometheus、VictoriaMetrics、ElasticSearch 等作为数据源接入夜莺后,就可以在夜莺里配置指标和日志告警规则。夜莺也提供 ad-hoc 查询、指标视图、仪表盘等可视化能力;配合 Categraf 采集器,可以组成一站式监控方案。

项目地址:https://github.com/ccfos/nightingale

v8.beta5 更新清单

本次更新没有 Bugfix,主要是功能新增和体验优化:

  • feat: 接口鉴权支持使用用户自己的 token
  • feat: 支持将接收的时序数据转发到 kafka
  • feat: 仪表盘折线图新增 annotations 功能
  • feat: 仪表盘折线图新增右对齐的表格模式图例
  • feat: 仪表盘折线图阈值新增百分比模式,以及新增阈值样式支持虚线和区域等多样组合
  • feat: 仪表盘排行榜新增 Retro LCD 显示模式
  • feat: 仪表盘全局链接支持新增 dashboards 类型链接
  • refactor: 告警规则数据源筛选 UI 优化
  • refactor: 仪表盘配置改成手动保存模式(这点要注意)
  • refactor: 面板标题字体大小颜色优化
  • refactor: 面板标题栏展示自定义时间提示
  • refactor: 分组面板折叠后显示包含面板数量信息
  • refactor: 折线图文字颜色优化增强对比度

下面重点说明两个对日常使用影响较大的变化:接口鉴权 token,以及告警规则数据源筛选 UI 优化。

接口鉴权支持使用用户自己的 token

之前夜莺的接口调用需要先调用 login 接口拿到 token,自动化脚本和外部系统集成时会比较繁琐。v8.beta5 新增了一种认证鉴权方式:用户可以在个人中心创建 token,之后把这个 token 放到 HTTP Header 里,就可以直接调用接口。

夜莺token列表

例如调用用户列表接口,可以这样写:

desktop:~# curl -s -H "X-User-Token: afbb31b8-ed1d-4877-b6ae-c3af68c0a434" 'localhost:17000/api/n9e/users' | python3 -mjson.tool
{
    "dat": {
        "admin": true,
        "list": [
            {
                "id": 1,
                "username": "root",
                "nickname": "\u8d85\u7ba1",
                "phone": "",
                "email": "",
                "portrait": "",
                "roles": [
                    "Admin"
                ],
                "contacts": {},
                "maintainer": 0,
                "create_at": 1739514850,
                "create_by": "system",
                "update_at": 1739516089,
                "update_by": "system",
                "belong": "",
                "admin": true,
                "user_groups": [
                    {
                        "id": 1,
                        "name": "demo-root-group"
                    }
                ],
                "busi_groups": [
                    {
                        "id": 1,
                        "name": "Default Busi Group"
                    }
                ],
                "last_active_time": 1739516089
            }
        ],
        "total": 1
    },
    "err": ""
}

关键点是把 token 放到 X-User-Token 这个 Header 里。不过,这个功能需要通过配置文件打开。在夜莺的 config.toml 中找到 [HTTP.JWTAuth] 部分,然后在它上面增加 [HTTP.TokenAuth] 配置:

...
[HTTP.TokenAuth]
Enable = true

[HTTP.JWTAuth]
...

适合使用这种鉴权方式的场景包括:自动化巡检脚本、内部运维平台调用夜莺 API、批量管理用户或告警规则,以及其他不方便频繁登录取 token 的集成场景。

告警规则数据源筛选 UI 优化

夜莺告警规则-数据源筛选

告警规则中,数据源类型做了 UI 调整,选择入口更直观。需要注意的是,只有已经配置过的数据源类型才会显示,并且配置后需要刷新页面。比如没有在 集成中心-数据源 配置 Prometheus 数据源,告警规则里就不会显示 Prometheus 数据源类型。

Prometheus 这个数据源类型,适用于 VictoriaMetrics、M3DB、Thanos 等所有支持 Prometheus 协议的数据源。

上面的截图来自夜莺商业版,商业版数据源类型更多。开源版本的数据源类型包括 Prometheus、ElasticSearch、Loki、TDEngine、Host,样式和商业版保持一致。

仪表盘体验改动

v8.beta5 对仪表盘也做了多项细节增强:

  • 折线图支持 annotations,方便在曲线上标记关键事件。
  • 折线图图例支持右对齐的表格模式。
  • 折线图阈值新增百分比模式,阈值样式支持虚线、区域等组合。
  • 排行榜新增 Retro LCD 显示模式。
  • 全局链接支持 dashboards 类型链接。
  • 仪表盘配置改成手动保存模式,避免配置过程中未确认的变更自动生效。
  • 面板标题、标题栏时间提示、分组面板折叠信息、折线图文字颜色等细节均做了优化。

其中“仪表盘配置改成手动保存模式”需要特别注意。升级后,如果你修改了仪表盘配置,记得手动保存,否则可能会误以为配置已经生效。

如何升级 v8.beta5

github 下载最新 release 包,更新二进制、配置文件和 integrations 目录,然后重启服务即可。

配置文件一般不要直接覆盖。建议先对新旧配置做 diff,确认是否有新增配置项;如果有,就手动加到现有配置文件里,避免覆盖本地已有配置。

FAQ

Q1: v8.beta5 的接口 token 鉴权默认开启吗? A: 不是。需要在 config.toml 中增加 [HTTP.TokenAuth] 并设置 Enable = true

Q2: X-User-Token 适合替代所有登录态吗? A: 它更适合脚本、自动化平台和外部系统调用 API 的场景。页面登录仍然按原有方式使用即可。

Q3: 为什么告警规则里看不到某种数据源类型? A: 只有在 集成中心-数据源 中配置过对应数据源,并刷新页面后,告警规则里才会显示该类型。

结语

v8.beta5 是一次偏体验和集成能力的版本更新。接口 token 鉴权降低了 API 集成成本,Kafka 转发增强了数据链路扩展能力,仪表盘和告警规则的 UI 优化则改善了日常使用效率。

这个版本之后,后面的版本可能会发得慢一点。我们正在做通知规则的新功能,会对现有通知逻辑做一次较大的重构,完成后夜莺的告警通知能力会继续提升,敬请期待。

联系我们交流

延伸路径

继续看解决方案和产品对比

如果你正在做监控、可观测性或故障定位相关选型,建议从解决方案和产品对比继续往下看。

标签 夜莺监控
快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云