InfluxDB + Grafana计算成功率

news2024/11/29 8:48:49

文章目录

      • 方式一 借助Grafana的Transfrom
      • 方式二 Influx子查询
      • Transfrom介绍

建议针对每类Metric,使用一个Metric,增加success的tag区分成功还是失败。

方式一 借助Grafana的Transfrom

第一步:新建2个Query

  • Query Total:

    SELECT sum("count") as "total" FROM "laker_test" WHERE ("cluster" =~ /^$Region$/) AND $timeFilter
    
  • Query Success:

    SELECT sum("count") as "success" FROM "laker_test" WHERE ("cluster" =~ /^$Region$/ AND "success" = true) AND $timeFilter
    

第二步:在Transform处增加Outer joinField Name选择Time

第三步: 在Transform处增加Add field from calculation

  • Mode: Binary operation
  • Operation:

问题:如果 第一步 的查询中没有数据,即没有一条记录,那么这个查询无法返回0这种。导致绘图失败。

方式二 Influx子查询

针对上面的问题当没有记录,不显示默认0的问题,我们可以通过子查询+fill(0)

第一步:新建1个Query子查询+fill(0)

SELECT "success"  , "total"
	 FROM ( 
           SELECT sum("count") as "total" FROM "laker_test" WHERE ("cluster" =~ /^$Region$/) AND $timeFilter
		   ), (
           SELECT sum("count") as "success" FROM "laker_test" WHERE ("cluster" =~ /^$Region$/ AND "success" = true) AND $timeFilter
           )
	fill(0)

此时结果如下图:

1.当没值的时候显示情况

2.当有值的时候显示情况

这之后也可以配合Transform使用了,例如Reduce - Calcuations = max,这里不讲了,反正Transfrom很强大哈。

第二步:针对第一步的结果包装一层。

SELECT sum("success") as tsuccess , sum("total") as ttotal
		FROM 
		( // start
	 SELECT "success"  , "total"
	 FROM ( 
           SELECT sum("count") as "total" FROM "laker_test" WHERE ("cluster" =~ /^$Region$/) AND $timeFilter
		   ), (
           SELECT sum("count") as "success" FROM "laker_test" WHERE ("cluster" =~ /^$Region$/ AND "success" = true) AND $timeFilter
           )
	fill(0)
         // end 这是第一步的sql
        ) Group by time($interval) fill(0)

在这里插入图片描述

第三步:针对第二步的结果包装一层。

select 
	 sum("tsuccess") / sum("ttotal") as rate
from 
	(
        第二步的sql
    )

Transfrom介绍

参考:https://blog.51cto.com/u_12227788/5471570

1. Add field from calculation 从计算中添加字段

从计算中添加字段,使用其他两个字段计算的新字段,每个转换可以添加一个新的字段

mode -选择一种模式:

  • Reduce row -对选定字段的每一行独立应用选定的计算。
  • Binary option -对来自两个选定字段的单行中的值应用基本数学运算(求和、乘法等)。

Field name -如果选择 Reduce row,选择要在新字段计算中使用的字段名称。
Calculation -如果您选择Reduce row模式,则会出现calculation字段。单击该字段以查看可用于创建新字段的计算选项列表。
Operation -如果您选择Binary option模式,则会出现operation字段。这些字段允许对来自两个选定字段的单行中的值执行基本数学运算。还可以将数值用于二元运算。
Alias -(可选)输入新字段的名称。如果将此留空,则该字段将被命名为与计算匹配。

Replace all fields -(可选)如果您想隐藏所有其他字段并在可视化中仅显示您的计算字段,请选择此选项。

2.Outer join 按字段连接

使用此转换按字段连接来自结果集的多个时间序列。

如果想组合查询以便从字段计算结果,则此转换特别有用。

多个Query的场景。一般选择按Timejoin。

3.Merge 合并
使用此转换将多个查询的结果组合成一个结果。这在使用表格面板可视化时很有帮助。可以合并的值被合并到同一行。如果共享字段包含相同的数据,则值是可合并的。

多个Query的场景。没有上面的Outer Join好用

4.Concatenate fields 连接字段
将两个查询结果简单粗暴的拼接到一起

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

安科瑞电气火灾监控系统在春晓161#地块人防工程的设计与应用

安科瑞 华楠摘要:本文简述了电气火灾监控系统的组成原理,分析了电气火灾监控系统在应用中的设计依据和相关规范。通过安科瑞剩余电流式电气火灾监控系统在春晓161#地块人防工程电气火灾监控系统项目的实例介绍,阐述了电气火灾监控系统功能的实…

c语言实现扫雷(详细讲解)

本篇介绍,讲解如何使用c语言实现扫雷小游戏. 金句分享: ✨✨✨爱你所爱,行你所行✨✨✨ 目录前言:一、游戏设计思路介绍:效果展示二、游戏的分步讲解2.1、主函数测试区(test.c)基本构成2.2、游戏中函数实现区(game.c) (重点)2.21、雷盘的创建与初始化函…

centos8 Ambari-2.7.6.3+HDP-3.3.1离线安装详细教程(附安装包)

自2021年1月31日开始,所有Cloudera软件都需要有效的订阅,且订阅费昂贵。此外,CDH6和HDP3将是CDH和HDP的最后企业版本,原有企业版用户无法继续获取新的功能和性能提升。至2022年3月份,CDH/HDP全部停止服务(EoS),用户没办法获取售后支持。由于生产环境系统升级到centos8,…

linux 中 PCIE 中断映射机制

PCIE 中断映射机制 1、 PCIE 中有三种中断方式, MSI,MSI-X 和INTx PCIe总线继承了PCI总线的所有中断特性(包括INTx和MSI/MSI-X),以兼容早期的一些PCI应用层软件。 PCI总线最早采用的中断机制是INTx,这是…

基于Flink+kafka实时告警

引出问题 项目使用告警系统的逻辑是将实时数据保存到本地数据库再使用定时任务做判断,然后产生告警数据。这种方式存在告警的延时实在是太高了。数据从产生到保存,从保存到判断都会存在时间差,按照保存数据定时5分钟一次,定时任务…

智慧水务能效管理平台在污水处理厂电气节能中的应用

摘要:污水处理属于高能耗行业,会消耗大量的电能、燃料和药剂等,高能耗不仅会提升污水处理成本,还会加剧能源危机。所以,本文首先探究了污水处理厂耗能的原因,分析了污水处理与节能降耗的关系,然…

MyBatis-Plus数据安全保护(加密解密)

项目创建POM依赖 <dependency><!--MyBatis-Plus 企业级模块--><groupId>com.baomidou</groupId><artifactId>mybatis-mate-starter</artifactId><version>1.2.8</version> </dependency> <!-- https://mvnrepository…

git commit 命令详解

文章目录前言1. git commit 介绍2. git commit 使用3. git commit -m4. git commit -am5. git commit --amend6. commit 多行提交信息7. commit 背后到底发生了什么前言 CSDN 只用来做博客主站文章的转载 博客主站&#xff1a;https://www.itqaq.com 下面地址路径可能会发生变…

Java---中间件---Redis的常见命令和客户端使用

Redis的常见命令和客户端使用1.初识Redis1.1.认识NoSQL1.1.1.结构化与非结构化1.1.2.关联和非关联1.1.3.查询方式1.1.4.事务1.1.5.总结1.2.认识Redis1.3.安装Redis1.3.1.依赖库1.3.2.上传安装包并解压1.3.3.启动1.3.4.默认启动1.3.5.指定配置启动1.3.6.开机自启1.4.Redis桌面客…

VulnHub2018_DeRPnStiNK靶机总结

VulnHub2018_DeRPnStiNK靶机渗透总结 靶机下载地址: https://download.vulnhub.com/derpnstink/VulnHub2018_DeRPnStiNK.ova https://www.dropbox.com/s/8jqor3tuc3jhe1w/VulnHub2018_DeRPnStiNK.ova?dl0 打开靶机,使用nmap扫描出靶机的ip和开放的所有端口 可以看到,靶机开放…

从零开始学习Linux

Linux Linux内核版本&#xff1a;Linux内核运维开发小组&#xff0c;源码在不开源 Linux发行版本&#xff1a;由各大互联网/软件公司定制&#xff0c;开源 一个内核版本是有多种多样的发行版本 Ubuntu&#xff1a;以强大的桌面应用为主&#xff0c;吸收不少Windows用户&…

Docker部署jeecgboot微服务使用记录

docker安装和基础命令 docker安装 docker安装详细步骤 Docker命令 #进入容器 sudo docker exec -it 775c7c9ee1e1 /bin/bash # docker中 启动所有的容器命令 docker start $(docker ps -a | awk { print $1} | tail -n 2) # docker中 关闭所有的容器命令 docker stop $(doc…

(黑马C++)L09 C++类型转换 异常 输入输出流

一、C类型转换 类型转换&#xff08;cast&#xff09;是将一种数据类型转换成另一种数据类型&#xff0c;一般情况下要尽量少的去使用类型转换&#xff0c;除非解决非常特殊的问题。 &#xff08;1&#xff09;静态转换&#xff08;static_cast&#xff09; static_cast使用…

联合证券|内外利好共振 今年A股可更乐观一点

在经历了开年首周的快速拉升后&#xff0c;上星期A股商场全体高位盘整。职业板块从普涨转为快速轮动&#xff0c;前期领涨的新能源及大消费主线均出现了必定程度的回撤&#xff0c;由金融、信创板块接力“领跑”。 展望后市&#xff0c;指数在盘整后能否持续上攻&#xff1f;外…

解决前后端分离Vue项目部署到服务器后出现的302重定向问题

解决前后端分离Vue项目部署到服务器后出现的302重定向问题问题描述问题原因定位问题解决方案校验修改效果相关阅读写在最后问题描述 最近发现自己开发的vue前后端分离项目因为使用了spring security 安全框架&#xff0c;即使在登录认证成功之后再调用一些正常的接口总是会莫名…

Xilinx 7系列FPGA之Spartan-7产品简介

以最低的成本获得无与伦比的性能和功耗效率如果您对功耗或性能的要求与成本要求一样严苛&#xff0c;那么请使用 Spartan -7 FPGA。该系列采用 TSMC&#xff08;台积电&#xff09; 的 28nm HPL 工艺制造&#xff0c;将小尺寸架构的Xilinx 7 系列FPGA 的广泛功能和符合 RoHS 标…

结构体专题详解

目录 &#x1f94e;什么是结构体&#xff1f; ⚾结构体的声明 &#x1f3c0;简单结构体的声明 &#x1f3d0;结构体的特殊声明 &#x1f3c8;结构体嵌套问题 &#x1f3c9;结构体的自引用 &#x1f3b3;结构体的内存大小 &#x1f94c;结构体的内存对齐 ⛳内存对齐的优点 ⚽还…

SAP 服务器参数文件详细解析

一、SAP参数的说明 SAP参数的学习需要了解SAP参数的作用、参数的启动顺序、参数的配置&#xff1b; 1、参数的启动顺序 a) 启动Start profileb) 启动default profilec) 启动instance profile 2、参数的位置 a) 启动参数Start profile的位置&#xff1a;/usr/sap//SYS/prof…

计讯物联数字乡村解决方案赋能乡村振兴

项目背景 数字乡村是乡村振兴的战略方向&#xff0c;是推动农村现代化的重要途径。当前&#xff0c;数字乡村建设正在加速推进&#xff0c;打造乡村数字治理新模式&#xff0c;提升乡村的数字化水平&#xff0c;进一步推动乡村振兴进入高质量发展新赛道。计讯物联作为数字乡村…

机器学习的几个公式

今天看了几个公式的推演过程&#xff0c;有些推演过程还不是很明白&#xff0c;再着担心自己后面会忘记&#xff0c;特来此记下笔记。python 是由自己特定的公式符号的&#xff0c;但推演过程需要掌握&#xff0c;其实过程不过程不是重点&#xff0c;只要是要记得公式的含义&am…