问题标签 [influxql]

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 回答
26 浏览

influxdb - 在将函数应用于以前的数据点时按时间分段聚合值

一些基本的东西:我正在尝试创建一个“正在运行”的查询,在该查询中,对于每个数据点,我都会得到平均值并计数到该点,以及值。例如对于这些测量:

我想生成一个看起来像这样的 csv:

由于这是聚合和选择器查询的混合,我在单独的查询中“饥饿”然后是平均和计数。但是,如果我将两者都分组time(1s),我的平均值和计数将仅与组大小相关;我需要它与当时的整个设置相关...有什么建议吗?

0 投票
1 回答
290 浏览

influxdb - 时间戳`now()`函数的WHERE子句上的InfluxQL模运算符

我想从今天到 查询我的00.00记录now()。问题是我想动态地做到这一点,所以我需要使用now()函数来操作时间戳。

这里以查询为例。

这是回应。

似乎 InfluxQL 不支持对时间戳取模。我也认为那是我可能会错误地对待它。供您参考,我在 Grafana 上使用 InfluxQL。

有没有其他方法可以实现这一目标?

编辑:我的 Grafana 面板不能同时依赖$timeFilter$__interval. 我的意思是,例如,显示“今天到目前为止”的统计信息。如果我依赖这些变量,那是行不通的,因为当我们更改 Grafana 上的间隔时,查询会受到影响。

0 投票
1 回答
308 浏览

javascript - 我无法获取查询到 influxdb 的最新记录

我在influxql中有一个查询来获取cpu、内存、负载和磁盘值,用一个WHERE子句表示它只带来1分钟前的数据。查询有效,但它总是带来相同的日期,即 WHERE 的确切日期。我需要你给我带来最新的日期,也就是服务器最后一次向influexdb数据库发送数据的时间。

我想要的是确定是否有机器没有发送数据,也就是说,我需要 condiict 的最后日期:

例如,现在我输入 WHERE 的日期,所以:

我需要的是最后一个日期,因为在那一小时(1h)内肯定有日期更长的记录(time> =),我的意思是必须有日期的记录:

我感谢知道发生了什么的人的帮助。谢谢!

这是 SQL:

这是查询的完整退出:

名称:自定义标签:hostname=linux7 time cpu mem load disk ---- --- --- ---- ---- 2019-02-02T18:46:00.42366206Z 1 43 0 0

名称:自定义标签:hostname=linux24 time cpu mem load disk ---- --- --- ---- ---- 2019-02-02T18:46:00.42366206Z 11 34 0 0

名称:自定义标签:hostname=linux4 time cpu mem load disk ---- --- --- ---- ---- 2019-02-02T18:46:00.42366206Z 11 42 0 0

名称:自定义标签:hostname=linux3 time cpu mem load disk ---- --- --- ---- ---- 2019-02-02T18:46:00.42366206Z 73 32 1 0

名称:自定义标签:hostname=linux20 time cpu mem load disk ---- --- --- ---- ---- 2019-02-02T18:46:00.42366206Z 1 41 0 0

名称:自定义标签:hostname=linux1 time cpu mem load disk ---- --- --- ---- ---- 2019-02-02T18:46:00.42366206Z 36 55 0 0

0 投票
1 回答
901 浏览

java - InfluxDB 的请求 选择时间 > 时间戳

我有一个将测量值发送到 influxDB 数据库的 java 应用程序。

我在我的 influxdb 数据库中添加点。我每次运行程序时添加的点都有当前时间戳。

这就是我添加积分的方式(测量构建):

我的问题是,当我用这样的请求请求我的数据库时:

我注意到以前的时间戳结果也被计算在内,即使我正在做时间>时间戳。当我做 > 而不是 >= 它只计算最后一个。我还注意到,对于上一个时间戳,例如,如果我有像这样的时间戳 1540300800000 ns,influxdb 在开头添加一个 6,它变成 61540300800000 ms。

我真的不明白发生了什么。

有任何想法吗?

0 投票
1 回答
3401 浏览

influxdb - 将 influxdb 数据建模为标签和字段

TL;DR
如何将数据建模为字段与标签,以防您同时执行分组和计数(distinct())

所以目前这是我的 influxdb 数据模型:

所以现在我想找出不同账户(活跃账户)的数量。所以我可以运行以下查询:

这很好用,因为帐户 ID 是一个字段。

现在假设我想对 account_id 执行 group by 操作,例如查找每个帐户收到的请求数:

我不能这样做,因为在标签上建议使用 group by。

这种场景怎么办?

解决方案之一是将值存储在字段和值中,但这将是数据冗余。

另一种也是最优化的方法是让 count(distinct()) 处理标签。这可能吗?这实际上是他们 github 存储库中的一个功能请求。

或者可以对数据模型做些什么来达到同样的效果?

0 投票
1 回答
934 浏览

influxdb - InfluxDB如何查询每n个值

我正在尝试查询 InfluxDB 中每个第 n 个元素的数据。我正在执行下面的命令来这​​样做,但我没有得到任何结果。我正在使用我为示例而创建的示例数据。

我在 Influx 的 CLI 中运行的命令:

结果:

我是 InfluxDB 的新手,我不确定自己做错了什么。我已经阅读了有关进行连续查询的内容,但是当我进行连续查询时,我无法查询数据,因为它没有返回任何结果。提前感谢所有回复的人。

0 投票
1 回答
297 浏览

influxdb - 如何将流中的当前值与 tickscript 中的先前值进行比较?

我正在研究 kapacitor 警报以生成有关 influxDB 中数据的警报。发出请求后,我从流中接收到一个新值。我想将我收到的流中的当前值与之前收到的前一个值进行比较,以查看当前值是否大于前一个值。如果它大于以前的值,那么我想使用 kapacitor 和 tickscript 在 chronograf 上生成警报。

我如何在tickscript中实现这一点?非常感谢任何帮助。我是tickscript的新手。

0 投票
1 回答
759 浏览

influxdb - InfluxDB如何转义方括号“[”

我正在查询流入数据库,如下所示,

上面的查询工作正常,但是当我尝试在查询字符串中指定方括号时它不起作用,例如"/cda/stats/[name='set']

不确定如何在上述查询中转义方括号。

反斜杠“\”不适用于方括号。

0 投票
1 回答
60 浏览

influxdb - InfluxDB 模式设计 - 只需汇总数千个时间序列数据

我对 InfluxDB 很陌生。

我正在编写一个程序来监控位于 11 个地区的 13,000 个家庭电表的用电量。这些数据将用于一个报告程序,该程序主要只关心 11 个地区的总使用量。但是,我被要求将每个家庭的使用情况存储到 InfluxDB 中。

我可以有一个包含 13,000 个系列的测量吗?这将使求和变得很容易(我猜),但是 13,000 会不会太多?

我可以进行 13,000 个测量,每个测量有 1 个系列吗?进行求和交叉测量会很昂贵吗?

0 投票
1 回答
1258 浏览

influxdb - 为什么这个简单的流入选择查询返回一个空结果?

来自:https ://stackoverflow.com/a/47459151/1663462

为什么SELECT查询没有返回结果?


我找到了一个有效的查询: