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

以防读者不了解夜莺,开头先做个介绍:

夜莺监控,英文名字 Nightingale,是一款侧重告警的监控类开源项目。类似 Grafana 的数据源集成方式,夜莺也是对接多种既有的数据源,不过 Grafana 侧重在可视化,夜莺是侧重在告警引擎。比如把 Prometheus、VictoriaMetrics、ElasticSearch 等作为数据源接入夜莺,即可在夜莺里配置告警规则做指标、日志的告警。当然了,夜莺也不止做告警,还提供了 ad-hoc 查询、指标视图、仪表盘等可视化能力,不过在可视化方面没有 Grafana 道行深。配合 Categraf 采集器,夜莺可以做到一站式监控。其项目地址是:GitHub - ccfos/nightingale: Nightingale for monitoring and alerting, just as Grafana is for visualization.

本次更新没有 Bugfix(主要是也没有已知 Bug 了),只有优化和新增功能,变动内容如下:

  • 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,整个过程比较繁琐。根据广大用户的建议,我们新增了一个认证鉴权方式。可以在个人中心创建 token,之后把这个 token 放到 HTTP Header 里,就可以直接调用接口了。

比如调用用户列表接口,现在可以这样搞了:

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 里,就可以调用接口了。不过,这个功能需要通过配置文件打开,在夜莺的 config.toml 中,找到 [HTTP.JWTAuth] 部分,然后在上面增加一条配置:

...
[HTTP.TokenAuth]
Enable = true

[HTTP.JWTAuth]
...

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

告警规则中,数据源类型做了 UI 调整,更加直观了,方便用户选择。这些数据源类型,只有你配置了对应的数据源,并且刷新页面才会显示出来。比如你没有在集成中心-数据源配置 Prometheus 数据源,那 Prometheus 数据源类型就不会显示出来。

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

我手头没有开源版本的环境,上面的截图是夜莺商业版的,商业版数据源类型更多一些,开源版本应该有 5 种类型:Prometheus、ElasticSearch、Loki、TDEngine、Host,样式和商业版一致。

如何升级

到 github 下载最新的 release 包,更新二进制、配置文件、integrations 目录,重启即可。配置文件一般不能直接覆盖,需要自行 diff 一下,看看有没有新增的配置项,有的话需要手动加到你的配置文件里。

结语

这个版本之后,后面的版本可能会发得慢点,目前正在搞一个通知规则的新功能,对现有的通知逻辑做一个大重构,这个工作量比较大,等完事之后夜莺的告警通知能力会上一个大台阶,敬请期待。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/972105.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python - 爬虫利器 - BeautifulSoup4常用 API

文章目录 前言BeautifulSoup4 简介主要特点:安装方式: 常用 API1. 创建 BeautifulSoup 对象2. 查找标签find(): 返回匹配的第一个元素find_all(): 返回所有匹配的元素列表select_one() & select(): CSS 选择器 3. 访问标签内容text 属性: 获取标签内纯文本get_t…

认识 ADB(Android Debug Bridge,Android SDK 中的一个工具)

一、ADB 概述 ADB,全称 Android Debug Bridge,是 Android SDK 中的一个工具 ADB 位于 Android SDK 下 platform-tools 目录中 ADB 起到调试桥的作用,ADB 可以让开发者通过 USB 连接安卓设备,并在电脑上执行各种命令,…

模拟解决哈希表冲突

目录 解决哈希表冲突原理: 模拟解决哈希表冲突代码: 负载因子: 动态扩容: 总结: HashMap和HashSet的总结: 解决哈希表冲突原理: 黑色代表一个数组,当 出现哈希冲突时&#xff0…

FPGA简介|结构、组成和应用

Field Programmable Gate Arrays(FPGA,现场可编程逻辑门阵列),是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物, 是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的&#xff0c…

【机器学习】超参数调优指南:交叉验证,网格搜索,混淆矩阵——基于鸢尾花与数字识别案例的深度解析

一、前言:为何要学交叉验证与网格搜索? 大家好!在机器学习的道路上,我们经常面临一个难题:模型调参。比如在 KNN 算法中,选择多少个邻居(n_neighbors)直接影响预测效果。 • 蛮力猜…

UGUI RectTransform的SizeDelta属性

根据已知内容,SizeDelta offsetMax - offsetMin 1.锚点聚拢情况下 输出 那么此时SizeDelta就是UI元素的长宽大小 2. 锚点分散时 引用自此篇文章中的描述 揭秘!anchoredPosition的几何意义! SizeDelta offsetMax - offsetMin (rectMax…

51单片机入门_10_数码管动态显示(数字的使用;简单动态显示;指定值的数码管动态显示)

接上篇的数码管静态显示,以下是接上篇介绍到的动态显示的原理。 动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选&#xff…

mybatis使用typeHandler实现类型转换

使用mybatis作为操作数据库的orm框架,操作基本数据类型时可以通过内置的类型处理器完成java数据类型和数据库类型的转换,但是对于扩展的数据类型要实现与数据库类型的转换就需要自定义类型转换器完成,比如某个实体类型存储到数据库&#xff0…

瑞萨RA-T系列芯片ADCGPT功能模块的配合使用

在马达或电源工程中,往往需要采集多路AD信号,且这些信号的优先级和采样时机不相同。本篇介绍在使用RA-T系列芯片建立马达或电源工程时,如何根据需求来设置主要功能模块ADC&GPT,包括采样通道打包和分组,GPT触发启动…

最新智能优化算法:牛优化( Ox Optimizer,OX)算法求解经典23个函数测试集,MATLAB代码

一、牛优化算法 牛优化( OX Optimizer,OX)算法由 AhmadK.AlHwaitat 与 andHussamN.Fakhouri于2024年提出,该算法的设计灵感来源于公牛的行为特性。公牛以其巨大的力量而闻名,能够承载沉重的负担并进行远距离运输。这种…

【linux】在 Linux 服务器上部署 DeepSeek-r1:70b 并通过 Windows 远程可视化使用

【linux】在 Linux 服务器上部署 DeepSeek-r1:70b 并通过 Windows 远程可视化使用 文章目录 【linux】在 Linux 服务器上部署 DeepSeek-r1:70b 并通过 Windows 远程可视化使用个人配置详情一、安装ollama二、下载deepseek版本模型三、在 Linux 服务器上配置 Ollama 以允许远程访…

【Linux网络编程】应用层协议HTTP(请求方法,状态码,重定向,cookie,session)

🎁个人主页:我们的五年 🔍系列专栏:Linux网络编程 🌷追光的人,终会万丈光芒 🎉欢迎大家点赞👍评论📝收藏⭐文章 ​ Linux网络编程笔记: https://blog.cs…

Chrome多开终极形态解锁!「窗口管理工具+IP隔离插件

Web3项目多开,继ads指纹浏览器钱包被盗后,更多人采用原生chrome浏览器,当然对于新手,指纹浏览器每月成本也是一笔不小开支,今天逛Github发现了这样一个解决方案,作者开发了窗口管理工具IP隔离插件&#xff…

Canal同步MySQL增量数据

引言 在现在的系统开发中,为了提高查询效率 , 以及搜索的精准度, 会大量的使用 redis 、memcache 等 nosql 系统的数据库 , 以及 solr 、 elasticsearch 类似的全文检索服务。 那么这个时候, 就又有一个问题需要我们来考虑, 就是数据同步的问题, 如何将实时变化的…

MacOS 15.3 卸载系统内置软件

1、关闭系统完整性(SIP) 进入恢复模式(recovery) 如果您使用的是黑苹果或者白苹果,可以选择 重启按住CommandR 进入,如果是M系列芯片,长按开机键,进入硬盘选择界面进入。 我是MacMini M4芯片,关…

【核心算法篇七】《DeepSeek异常检测:孤立森林与AutoEncoder对比》

大家好,今天我们来深入探讨一下《DeepSeek异常检测:孤立森林与AutoEncoder对比》这篇技术博客。我们将从核心内容、原理、应用场景等多个方面进行详细解析,力求让大家对这两种异常检测方法有一个全面而深入的理解。 一、引言 在数据科学和机器学习领域,异常检测(Anomaly…

Ubuntu24.04无脑安装docker(含图例)

centos系统请看这篇 Linux安装Docker教程(详解) 一. ubuntu更换软件源 请看这篇:Ubuntu24.04更新国内源 二. docker安装 卸载老版docker(可忽略) sudo apt-get remove docker docker-engine docker.io containerd runc更新软件库 sudo a…

thingboard告警信息格式美化

原始报警json内容: { "severity": "CRITICAL","acknowledged": false,"cleared": false,"assigneeId": null,"startTs": 1739801102349,"endTs": 1739801102349,"ackTs": 0,&quo…

✨2.快速了解HTML5的标签类型

✨✨HTML5 的标签类型丰富多样&#xff0c;每种类型都有其独特的功能和用途&#xff0c;以下是一些常见的 HTML5 标签类型介绍&#xff1a; &#x1f98b;结构标签 &#x1faad;<html>&#xff1a;它是 HTML 文档的根标签&#xff0c;所有其他标签都包含在这个标签内&am…

day12_调度和可视化

文章目录 day12_调度和可视化一、任务调度1、开启进程2、登入UI界面3、配置租户4、创建项目5、创建工作流5.1 HiveSQL部署&#xff08;掌握&#xff09;5.2 SparkDSL部署&#xff08;掌握&#xff09;5.3 SparkSQL部署&#xff08;熟悉&#xff09;5.4 SeaTunnel部署&#xff0…