问题标签 [graphite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3298 浏览

json - 试图在一次调用中获取多个图形的原始 Graphite 数据......是否可以嵌套目标?

为了使我的 Graphite 图表更具可定制性和交互性,我正在从 Graphiti 切换到获取原始数据并使用 Javascript 库 (flot) 绘制它。我大约每 10 秒从 Graphite 获取页面上每个图表的原始 JSON 数据,但我想在单个 GET 请求中获取所有数据。我可以要求多个目标,但我还没有找到组织它们的方法。理想情况下,我想找到一种方法将与每个图相关的目标嵌套到它们自己的 JSON 对象中。我试图避免必须解析所有目标名称并将它们分类到它们的透视图中。

示例:如果我这样做:

我得到这样的东西:

我想找回这样的东西:

有没有人有任何想法?

0 投票
5 回答
19533 浏览

metrics - 当石墨的碳聚合器可以做同样的工作时,为什么要使用 statsd?

我一直在探索用于显示来自多个服务器的指标的 Graphite 绘图工具,似乎“推荐”的方式是首先将所有指标数据发送到 StatsD。StatsD 聚合数据并将其发送到石墨(或者更确切地说,碳)。

就我而言,我想对跨服务器的指标进行简单的聚合,例如求和和平均,并在石墨中绘制。Graphite 带有一个碳聚合器,可以做到这一点。

StatsD 甚至不提供我所说的那种聚合。

我的问题是 - 我应该在我的用例中使用 statsd 吗?我在这里缺少什么吗?

0 投票
1 回答
594 浏览

javascript - 在水平上下文中设置 height() 会拉伸图形,同时保留重叠图缩放

在立体派示例中,将 context.horizo​​n() 的 height 参数更改为较小的值会导致图形过度绘制自身。增加值的情况正好相反 - 过度绘制的情况较少。

但是,当我更改高度参数时,我的图表保留了相同级别的过度绘图,并且它们只是相应地向上和向下缩放。当我减小高度时,这些图表实际上会失去分辨率。

我该如何解决?

这是我的代码:

var context = cubism.context().step(1000000).size(1000);

0 投票
1 回答
429 浏览

analysis - Riak 的分析工具,例如 Cube 或 Graphite

有没有基于 Riak 的GraphiteCube之类的分析工具?

我基本上是在寻找可以与 Riak 一起使用的聚合框架来进行实时分析和数据聚合。

0 投票
4 回答
14757 浏览

graphite - 使用 statsD 时有什么方法可以填补石墨中缺失的数据吗?

我正在使用 statsD 向石墨报告计数器数据;每次我收到消息时都会发送一个勾号。这很好用,除非在 statsD 出于某种原因必须重新启动的情况下。然后我的图表中出现了巨大的漏洞,因为当我没有收到任何消息时,statsD 现在不再每 10 秒发送一次“0”。

我正在报告各种不同的消息类型和队列,有时我很长一段时间都没有收到特定队列的消息。

是否有任何现有方法可以使用我指定的默认值(在我的情况下为 0)“填充”缺失的数据?

我考虑过为给定指标发送一个“0”计数,以便 statsD 开始为它发送 0,但我并不总是知道我将提前报告的一组指标。

0 投票
1 回答
205 浏览

backbone.js - 骨干.js 集合和石墨碳的集合

我正在编写一个backbone.js 'app',并且想将石墨/碳的json输出直接映射到一些主干模型/集合。

一般来说,json输出是这样的:

我已经定义了一个简单的模型和集合,这样:

如您所见,我将 id 重载为每个测量的时间戳,并且特定“度量”的所有测量都存储在名为 Measurements 的集合下。

我还对其进行了硬编码,因此它实际上只适用于一个测量集合(即 json 中的“目标”)。

我的问题涉及如何最好/优雅/灵活地在一次调用中实现多个测量(集合)的收集。即,石墨支持对其“目标”使用通配符,以便 ajax 请求/?target=some.string.*将带回所有匹配的目标和数据点(如在 json 示例中)。然后我会将其呈现给一个视图,在那里我将呈现累积数据或绘制所有测量值与时间的关系。

我正在考虑使用另一个包含许多测量值的集合(我们称之为集合)。我希望能够做一些事情,比如Set.fetch()从服务器获取所有匹配的测量值,并让 Set 从单个 ajax 请求中创建许多测量值集合。

有人对如何实施有任何建议吗?甚至是表示此模型/集合层的更好方法?

0 投票
1 回答
11043 浏览

graphite - 石墨中的自定义查询

我们需要收集多个服务器和业务流程的时间序列信息,并考虑使用石墨。如果我们想显示原始数据似乎很好。但是,如果我们想对这些数据进行 BI 并运行自定义查询怎么办?石墨是否允许这样做,或者我可以指示石墨在 postgress 上存储数据吗?

0 投票
1 回答
524 浏览

graphite - 多租户应用程序的石墨

我正在构建一个需要收集时间序列数据的系统。该系统是多租户的,因此不同的客户会发出他们自己的数据点,我会存储它。石墨对这种场景有什么样的支持?

0 投票
1 回答
1058 浏览

graphite - 无法使用 Cubism.js 找到 Graphite 指标

以下命令按预期返回指标:

curl " http://graphite.metrics:8080/metrics/find?format=completer&query=server *.cache"

如果我使用 Cubism.js 尝试相同的查询,我会得到“无法找到指标”:

如果 Cubism.js 在内部执行相同的请求,为什么找不到指标?

0 投票
1 回答
2621 浏览

graphite - Graphite URL API 降低大时间间隔的分辨率

我有以下问题。如果我向石墨要一张从 2 年前到今天的图表,每秒都有数据,如下所示:

它显示正确且非常快。显然,并非过去 2 年的所有分数都已呈现。但是,如果我要求石墨提供 csv 输出以使用其他绘图库自己渲染点:

我得到了整套积分(2 年 * 365 天 * 24 小时 * 60 分钟 * 60 秒的积分)。有没有办法制造石墨来减少这个数字?例如,要求最多 N 个点对大小为 WHOLE / N 的组进行平均或类似的事情。谢谢