计算 Graphite 中 groupByNode() 结果的百分比

2024-01-22

我有两组石墨系列,都是这种格式。第二组是相同的,只是它具有“x.y”前缀而不是“a.b”。

 a.b.ccc.a1.hr
 a.b.ccc.a2.hr
 a.b.ccc.a3.hr
 a.b.ddd.a1.hr
 a.b.ddd.a4.hr

要按我使用的第三个节点进行分组groupByNode(a.b.*.*.hr,2,"sumSeries"),这给了我两个系列:ccc and ddd。我想分ccc and ddd第一组中的系列除以第二组中的相应系列。我如何使用结果groupByNode在map/reduce函数中?


这是可能的,但很棘手,或者至少我不知道有更简单的方法以可扩展的方式做到这一点。

请注意,下面的方法使用mapSeries / reduceSeries仅在 Graphite-Web 中可用的功能master(不是 0.9.x,请参阅下文了解适用于 0.9.x 的手动方法)

我们从 2 个系列列表开始,每个系列列表包含ccc and ddd:

groupByNode(a.b.*.*.hr,2,"sumSeries")
groupByNode(x.y.*.*.hr,2,"sumSeries")

现在我们需要将它们放入包含所有项目的单个 seriesList 中,因此首先我们需要使它们再次区分:

aliasSub(groupByNode(a.b.*.*.hr,2,"sumSeries"), "$", ".a_b")
aliasSub(groupByNode(x.y.*.*.hr,2,"sumSeries"), "$", ".x_y")

现在我们有ccc.a_b, ddd.a_b, ccc.x_y, and ddd.x_y,我们可以将它们放入一个列表中group:

group(
  aliasSub(groupByNode(a.b.*.*.hr,2,"sumSeries"), "$", ".a_b"),
  aliasSub(groupByNode(x.y.*.*.hr,2,"sumSeries"), "$", ".x_y")
)

现在我们可以开始映射/减少:

reduceSeries(
  mapSeries(
    group(
      aliasSub(groupByNode(a.b.*.*.hr,2,"sumSeries"), "$", ".a_b"),
      aliasSub(groupByNode(x.y.*.*.hr,2,"sumSeries"), "$", ".x_y")
    ),
    0
  ),
  "asPercent", 1, "a_b", "x_y"
)

此时我们将有ccc.reduce.asPercent and ddd.reduce.asPercent,然后你可以将整个东西包装在另一个中aliasByNode(<query>, 0)如果你想要ccc and ddd.

这与调用本质上是一样的:

group(
  alias(asPercent(
    groupByNode(a.b.ccc.*.hr,2,"sumSeries"),
    groupByNode(x.y.ccc.*.hr,2,"sumSeries"),
  ), "ccc"),
  alias(asPercent(
    groupByNode(a.b.ddd.*.hr,2,"sumSeries"),
    groupByNode(x.y.ddd.*.hr,2,"sumSeries"),
  ), "ddd")
)

当然,如果您添加它会继续工作eee etc.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算 Graphite 中 groupByNode() 结果的百分比 的相关文章

  • Grafana与python后端通过get请求进行通信

    插件配置请参考 Grafana获取URL地址中的json数据 Grafana下载如下插件 文章目录 模拟URL路由 配置Grafana插件 效果展示 模拟URL路由 from fastapi import FastAPI Query imp
  • 性能测试:工具篇:Jmeter实时可视化平台搭建

    部署 influxDB 首先 pull influxBD镜像 拉取是1 8的版本 虽有2 0 的版本 但我还是喜欢站在巨人的肩头前行 debugfeng debugfeng sudo docker pull influxdb 1 8 1 8
  • opentsdb+grafana监控环境搭建

    opentsdb是在hbase的基础上设计的时间序列数据库 安装opentsdb必须先有hbase hadoop和hbase是以集群的方式安装 如果在单台服务器上安装 下面的配置文件也是适合的 只要把相应的服务器名移除掉就可以 grafan
  • grafana导入prometheus

    grafana 简介 grafana是用于可视化大型测量数据的开源程序 他提供了强大和优雅的方式去创建 共享 浏览数据 dashboard中显示了你不同metric数据源中的数据 Grafana是一个开源的 拥有丰富dashboard和图表
  • Prometheus: 通过ConfigMap来添加Grafana仪表盘

    如果你通过kube prometheus stack部署了Prometheus Grafana 那么Grafana中的仪表盘就是通过边车 sidecar 来动态获取的 Sidecar的观察对象是ConfigMap 当ConfigMap中配置
  • Grafana安装和实现可视化和告警

    1 Grafana安装和实现可视化和告警 Prometheus UI 提供了快速验证 PromQL 以及临时可视化支持的能力 但其可视化能力却比较弱 一般情况下 我们都用 Grafana 来实现对 Prometheus 的可视化实现 1 1
  • 如何在石墨图上获得尽可能少的计数

    require statsd statsd Statsd new localhost 8125 tap sd sd namespace account 1 times do statsd increment hitcount4 end sl
  • 制作每日重置的InfluxDB/Grafana累积函数(锯齿图)

    我将能源使用数据记录为计数器 我希望将其显示为每天重置的累积图表 类似地在这里问 我可以按如下方式生成累积值 SELECT mean value FROM energy WHERE timeFilter GROUP BY time inte
  • 在grafana单一统计中使用influxdb的时间字段

    是否可以使用timegrafana 的单个统计面板中的字段 我知道你不能只查询 influxdb 中的时间字段 但我可以获取我感兴趣的统计数据的时间 如下所示 select time last context id from data co
  • Django 导入错误 - 没有名为 django.conf.urls.defaults 的模块

    我正在尝试运行使用 django 1 6 的 statsd graphite 访问 Graphite URL 时 出现 django 模块错误 文件 opt graphite webapp graphite urls py 第 15 行 位
  • prometheus grafana mysql监控配置使用

    文章目录 前传 bitnami mysqld exporter 0 15 1镜像 出现了问题 my cnf 可以用这个 prom mysqld exporter v0 15 0 镜像 重要的事情 mysql监控效果 外传 前传 promet
  • 正确计算发送到死信SQS队列的消息数

    我希望 grafana 报告在任何给定时间死信队列中有多少消息 由于最终在此队列中的消息的性质 将评估和解析最终在此队列中的消息 我已将 grafana 配置为读取NumberOfMessagesSent from a dead lette
  • 无法使用石墨配置grafana

    我使用 Nginx 为 Graphite 和 Grafana 提供服务 它们都在同一台服务器上运行 而不是我的桌面 我可以通过 Nginx 访问 Graphite 但是 grafana 似乎无法连接到 Graphite 错误 Graphit
  • 如何使用prometheus获取pod的CPU和内存使用百分比

    我想使用 promql Prometheus 以以下格式显示 pod 详细信息 此外 我想使用 promql 以以下格式显示应用程序 组件的 CPU 和内存利用率 promql 查询 sum container memory working
  • Grafana日志插件不显示日志面板

    我正在尝试创建一个支持日志面板的 Grafana 插件 我正在关注来自他们网站的路线 https grafana com docs grafana latest developers plugins build a logs data so
  • Grafana:如何获得选定时间段的持续时间

    I can t find the correct mathematical formula to compute a SLA availability with Grafana I have graph to show the durati
  • Graphite:用一个命令处理多个系列

    我想将两个系列放在石墨上的同一张图中仪表板 但是 由于仪表板需要单行命令 我找不到不涉及使用通配符的方法 这是我想要在同一张图中显示的两个系列的示例 sum base foo bar positive sum base foo bar ne
  • 获取 Prometheus 中两个自定义时间戳之间的增量

    我有一个名为的普罗米修斯指标device number 我想要的是显示现在与一天 一周 一个月等之前的价值差异 这意味着减去具有两个不同时间戳的两个值 环顾四周 我没有找到任何关于如何执行此操作的有用文档 我想做但不起作用的是 sum de
  • 将矩阵与 SUM 相乘

    我想将一个指标与另一个指标之和的结果相乘 我想尝试做的事情 MeticOne SUM MetricTwo Thanks 假设你有MetricOne带标签id and name 你有MetricTwo还有标签id and name 然后你就得
  • 我的石墨中的 Logstash 指标在哪里?

    这可能是一个菜鸟问题 但我很难找到答案 所以我希望你们能在这里帮助我 我有一个running logstash实例将日志从一台服务器传送到另一台运行 Graphite 的服务器 这是我的输出配置 output stdout codec gt

随机推荐

  • 使用名称中带有字符串和迭代索引的 savefig

    我需要使用Python中的 savefig 来保存while循环的每次迭代的绘图 并且我希望我给图形指定的名称包含文字部分和数字部分 该数字来自数组或者是与迭代索引相关联的数字 我举一个简单的例子 index py from numpy i
  • 根据片段更改操作栏菜单状态

    我试图根据可见的片段在操作栏中显示 隐藏项目 在我的 MainActivity 中我有以下内容 Called whenever invalidateOptionsMenu is called Override public boolean
  • 如果我有嵌套的dispatch_async调用会发生什么?

    这可能是一个愚蠢的问题 但我需要自己问并解决这个问题 要将块提交到队列上执行 请使用以下函数dispatch sync and dispatch async 它们都采用队列和块作为参数 dispatch async立即返回 异步运行该块 而
  • 如果 CDI 和 EJB 都捆绑在 EAR 中,如何让 CDI 参与战争并运行 EJB

    我正在尝试构建一个在 EAR 中组装的企业应用程序 该应用程序应包含一个或多个ejb jars以及一个或多个war的 我想大量使用CDI 拦截器和生产者 在第一步中 我想使用日志生产者它被放置在ejb jar在应用程序的所有领域 我所做的是
  • 尝试创建一个圆形菜单

    我正在尝试使用 html 和 css 创建一个带有放射线的圆形菜单 但白色边框构建得不好 而且它在谷歌浏览器中看起来不太好 不像圆圈 我需要获得第 5 项和第 6 项之间的最后一个白色径向 我尝试过下一个代码 DEMO http jsfid
  • 无效的 CRM 2011 LINQ 查询:“‘where’条件无效。实体成员正在调用无效的属性或方法。”

    我正在尝试执行此查询来检索特定实体类型的审核项目 public List
  • 哈希表可以序列化吗?

    我看到一种普遍存在的belief https blogs msdn microsoft com adam 2010 09 10 how to serialize a dictionary or hashtable in c 2009年文章
  • Android:如何在软键盘中的候选视图上制作按钮?

    我想在按钮内制作candidateView 但是 你看到日志猫 请分享代码 我的代码软键盘 java Override public View onCreateCandidatesView LayoutInflater li LayoutI
  • 包的功能列表[重复]

    这个问题在这里已经有答案了 有没有一种简单 友好的方法来列出包的所有功能 而无需下载那些巨大的 PDF 包参考 我需要这个来让我熟悉这个包 找到合适的功能等 I tried rjags但它没有达到我的预期 加载包 例如car包裹 然后使用l
  • 变量总是重置

    我正在使用表单创建类似 mastermind 的游戏 我的问题是我有一个变量 attempts 我希望它在每次用户猜测数字时增加 但它似乎总是重置为零 因此我的尝试次数将始终显示为 1 如果有帮助 这里是我正在使用的代码 black 0 w
  • 如何使用assertTrue?

    I have package com darlik test import org junit Assert public class Test public static void main String args assertTrue
  • LINQ 多对多关系:解决方案?

    到目前为止 LINQ 已经非常优雅 但是为了执行基本的 m2m 查询 它没有提供我可以立即看到的解决方案 更糟糕的是 虽然它适用于任何其他表关系 但 LINQ 没有在我的 m2m 表的类结构中提供关联 所以我可以做类似的事情 artwork
  • justify-items 如何在 display:block 元素上工作

    The MDN 文档 https developer mozilla org en US docs Web CSS justify items of justify items指出 在块级布局中 它在内联轴上对齐其包含块内的项目 现在 我认
  • 导航视图 Sencha Touch 2

    我在 Sencha Touch 2 中的 NavigationView 有问题 当我按下 后退 按钮时 我无法导航多个窗口 我使用 view push 和 view pop 进行导航 view js Ext define MyApp vie
  • 扫描目录中的所有文件并按文件类型返回计数

    我刚刚加入一家 IT 公司并开始使用 ColdFusion 我的经理希望我在 ColdFusion 中编写代码 将扫描任何目录 例如c cf 其中包含数百个文件 包括 jQuery 文件 cfm 文件等 并给出此类文件的计数 我们可以手动选
  • Android N 中的 Java 8 Stream API

    根据谷歌的介绍 http android developers blogspot de 2016 03 first preview of android n developer html 从 Android N 开始 Android API
  • 使用 MySQL 和 PHP 读取部分 json 数据

    我使用一个 CMS 它以 JSON 格式在 MySQL 中保存资源 在一张表中 与来自 MySQL 的正常数据一起 当我循环数据时 我得到一个数组 JSON 数据 但我需要在 JSON 数据中搜索XNCatnCode Trying to l
  • 果冻豆运行设备出现 Listactivity 错误(SPAN_EXCLUSIVE_EXCLUSIVE 跨度的长度不能为零)

    我的应用程序以启动画面启动 然后打开列表活动行 单击任何行将打开一个包含文本视图 两个按钮 其中一个打开无限图库 另一个打开自定义对话框 和菜单项 关于 首选项 的活动 出口 这个应用程序在姜面包上完美运行 但在运行果冻豆的 Galaxy
  • Cordova 2.0.0 中的 Phonegap 屏幕截图插件

    我已经从 github 设置了屏幕截图插件 位于此处 https github com phonegap phonegap plugins tree master Android Screenshot https github com ph
  • 计算 Graphite 中 groupByNode() 结果的百分比

    我有两组石墨系列 都是这种格式 第二组是相同的 只是它具有 x y 前缀而不是 a b a b ccc a1 hr a b ccc a2 hr a b ccc a3 hr a b ddd a1 hr a b ddd a4 hr 要按我使用的