首页 > 其他分享 >夜莺监控(Nightingale)上线内置指标功能

夜莺监控(Nightingale)上线内置指标功能

时间:2024-05-13 12:09:11浏览次数:17  
标签:COMMENT 内置 varchar name DEFAULT 191 夜莺 Nightingale NULL

Prometheus 生态里如果要查询数据,需要编写 promql,对于普通用户来说,门槛有点高。通常有两种解法,一个是通过 AI 的手段做翻译,你用大白话跟 AI 提出你的诉求,让 AI 帮你写 promql,另一种是平台里内置现成的 promql,覆盖常用场景开箱即用。夜莺监控(Nightingale)最近上线了内置指标功能,可以方便做知识沉淀,让普通用户也能开箱即用。

版本说明

需要 v7.0.0.beta3 以上版本支持。虽然是 beta 版本,实际上既有功能都是稳定的,当前还在持续往里添加新功能,而根据发版节奏,正式版本固定每年七八月份发布,所以当前的版本都是 beta,实际是可以用于生产的,可以放心升级。

指标视图长下面这个样子:

20240511092248

核心就是把 promql 提前内置,配上中文名称,难理解的还会配上详细解释,同时分门别类,最终用户点击指标的中文名称就可以直接出图了。

点击某个指标,侧拉板里出图,如下:

20240511093207

这样一来,用户不需要懂 promql,只需要知道自己要查什么,就可以直接查到,非常方便。

默认提供的 promql 都是查询整个时序库的,没有过滤条件。对于某个业务的研发人员,可能只想看自己负责的服务的指标,此时可以提前配置一些过滤条件,选中某个过滤条件之后再点击指标,就会自动在 promql 中增加过滤条件,比如下面的例子,我配置了一个这样的过滤条件:

20240511093613

这里我使用 ident 标签做过滤,值为 categraf01,你完全可以自定义其他标签的过滤条件。再次点击指标,效果如下:

20240511092952

可以看到 promql 已经被自动修改了,添加上了 ident="categraf01" 的过滤条件。

其他改动

v7.0.0.beta3 版本的其他 changelog 如下:

  • feat: 单点登录配置,敏感信息支持使用加密变量
  • refactor: Prometheus 源的即时查询支持使用内置指标查询数据,易用性提升
  • refactor: 一些 TextArea 组件打开 autoSize 高度会自动随着内容撑开
  • refactor: 仪表盘只会在点击全屏后展示关闭说明提示
  • fix: 修复订阅规则多选告警规则时会横向溢出问题
  • fix: 修复 VictoriaMetrics 源的仪表盘变量查询时间范围大于1天时可能存在缓存数据的问题
  • fix: 修复切换账号后本地缓存的 gid 不合法导致查询错误的问题

升级注意

替换二进制以及 integrations 目录,重启即可。夜莺会自动创建表结构,如果你的夜莺所用的数据库连接账号不具备建表权限,就需要手工建表了,语句如下:

CREATE TABLE `builtin_metrics` (
    `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'unique identifier',
    `collector` varchar(191) NOT NULL COMMENT 'type of collector',
    `typ` varchar(191) NOT NULL COMMENT 'type of metric',
    `name` varchar(191) NOT NULL COMMENT 'name of metric',
    `unit` varchar(191) NOT NULL COMMENT 'unit of metric',
    `lang` varchar(191) NOT NULL DEFAULT '' COMMENT 'language of metric',
    `note` varchar(4096) NOT NULL COMMENT 'description of metric in Chinese',
    `expression` varchar(4096) NOT NULL COMMENT 'expression of metric',
    `created_at` bigint NOT NULL DEFAULT 0 COMMENT 'create time',
    `created_by` varchar(191) NOT NULL DEFAULT '' COMMENT 'creator',
    `updated_at` bigint NOT NULL DEFAULT 0 COMMENT 'update time',
    `updated_by` varchar(191) NOT NULL DEFAULT '' COMMENT 'updater',
    PRIMARY KEY (`id`),
    UNIQUE KEY `idx_collector_typ_name` (`lang`,`collector`, `typ`, `name`),
    INDEX `idx_collector` (`collector`),
    INDEX `idx_typ` (`typ`),
    INDEX `idx_name` (`name`),
    INDEX `idx_lang` (`lang`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE `metric_filter` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'unique identifier',
  `name` varchar(191) NOT NULL COMMENT 'name of metric filter',
  `configs` varchar(4096) NOT NULL COMMENT 'configuration of metric filter',
  `groups_perm` text,
  `create_at` bigint NOT NULL DEFAULT '0' COMMENT 'create time',
  `create_by` varchar(191) NOT NULL DEFAULT '' COMMENT 'creator',
  `update_at` bigint NOT NULL DEFAULT '0' COMMENT 'update time',
  `update_by` varchar(191) NOT NULL DEFAULT '' COMMENT 'updater',
  PRIMARY KEY (`id`),
  KEY `idx_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

小结

看到夜莺监控(Nightingale)发布的这个新功能不错,介绍给大家,希望对大家有所帮助。据说,更多有趣的功能也快来了,不说了,快去升级吧,跟紧节奏!

标签:COMMENT,内置,varchar,name,DEFAULT,191,夜莺,Nightingale,NULL
From: https://www.cnblogs.com/ulricqin/p/18188952

相关文章

  • Go语言:内置函数
    什么是Go语言的内置函数呢?顾名思义,就是Go语言为了方便我们编程,提供了一些不需要导包就可以直接使用的函数,就叫内置函数了。常用的内置函数有哪些呢?1、len函数统计字符串的长度或者数组的长度等,统计字符串的长度时,是按照字节来统计的(Go语言中,一个汉字占3个字节)。2、new函数分......
  • Python进阶之内置方法
    【一】内置方法引入__init__ :初始化对象时触发__del__ :删除类时触发__new__ :构造类时触发__str__ :str函数或者print函数触发__repr__ :repr或者交互式解释器触发__doc__ :打印类内的注释内容__enter__ :打开文档触发__exit__ :关闭文档触发__getattr__:访问不存在的属......
  • for 、range关键字、内置方法
    【一】while循环补充continue:结束当前当次循环break:结束整个循环【二】for循环遍历可迭代类型(能索引取值的也属于可迭代类型)字符串name="dream"forainname:print(a)dream列表name=[1,2,3,4]forainname:print(a)1234元组name......
  • 已经有 Prometheus 了,还需要夜莺?
    谈起当下监控,Prometheus无疑是最火的项目,如果只是监控机器、网络设备,Zabbix尚可一战,如果既要监控设备又要监控应用程序、Kubernetes等基础设施,Prometheus就是最佳选择。甚至有些开源项目,已经内置支持了Prometheus协议的指标暴露,比如新版本的Zookeeper、新版本的RabbitMQ、......
  • Python高级之常用的内置函数
    【一】什么是内置函数内置函数就是Python给你提供的,拿来直接用的函数目前共有68个内置函数Built-inFunctionsAabs()aiter()all()any()anext()ascii()Bbin()bool()breakpoint()bytearray()bytes()Ccallable()chr()classmethod()compile()complex()Ddelatt......
  • 解决SpringBoot内置tomcat出现error:An incompatible version [1.2.16] of the Apache
    问题描述在运行SpringBoot时出现一个error2024-05-08T20:52:06.512+08:00ERROR20752---[springboot3-003-demo][main]o.a.catalina.core.AprLifecycleListener:Anincompatibleversion[1.2.16]oftheApacheTomcatNativelibraryisinstalled,wh......
  • 细说夜莺监控系统告警自愈机制
    虽说监控系统最侧重的功能是指标采集、存储、分析、告警,为了能够快速恢复故障,告警自愈机制也是需要重点投入建设的,所有可以固化为脚本的应急预案都可以使用告警自愈机制来快速驱动。夜莺开源项目从v7版本开始内置了告警自愈模块,本文将详细介绍告警自愈的原理和实现。夜莺项目......
  • Python中级之数据类型的内置方法1(数字类型和字符串)
    【一】数字类型【1】整数类型(int)(1)定义直接用整数定义,整数类型的值不能修改num=6(2)内置方法int.bit_length()#返回整数的二进制表示中最高位的位数,不包括符号和前导零。a=10b=a.bit_length()print(b)#输出4int.to_bytes(length,byteorder,signed)#......
  • Python中级之数据类型的内置方法3(元祖、布尔、集合)
    【一】元祖类型(tuple)【1】定义元祖类型是有序且不可变的数据类型,通常使用小括号定义(也可以使用逗号)#用逗号定义num_tuple=1,2,3,4,5#用小括号定义num_tuple=(1,2,3,4,5)【2】内置方法(1)类型强转#使用tuple()函数将其他数据类型转换为元组类型num_list=......
  • Python中级之数据类型的内置方法2(字典和列表)
    【一】字符串类型的内置方法(熟悉)【1】查找(1)find方法#【1】默认从左到右开始查找,找得到则返回元素所在的索引位置name='ligo'str=name.find('i')print(str)#输出1#【2】也可在区间内寻找,找不到则返回-1str=name.find('g',3,4)print(str)#输出-1#【3】也......