标签: influxdb

如何使用 Influxdb 查询一段时间内有多少个指标?

我想知道在给定时间段内我们向 InfluxDB 发送了多少事件。如果我使用以下查询SELECT COUNT(value) FROM /./ WHERE time > now() - 1h GROUP BY time(10m),我会为每个指标分组,但我想要所有指标的总数。

如果我使用SELECT COUNT(*) FROM /./ WHERE time > now() - 1h GROUP BY time(10m),我会收到一个错误:

服务器返回错误:count() 中的预期字段参数

influxdb

1
推荐指数
1
解决办法
5752
查看次数

使用Telegraf(使用InfluxDB)在Grafana中使用网络图表是平的

我有一个Grafana仪表板,其中包含Telegraf在InfluxDB中收集的指标.我遇到的问题与平坦的网络图有关.

在此输入图像描述

我的telegraf.conf包含net插件:

[[inputs.net]]
Run Code Online (Sandbox Code Playgroud)

并且测试返回数据:

$ telegraf -config /etc/telegraf/telegraf.conf -input-filter net -test
* Plugin: net, Collection 1
> net,interface=eth0 bytes_recv=48497859793i,bytes_sent=68085171005i,drop_in=0i,drop_out=0i,err_in=0i,err_out=0i,packets_recv=65927848i,packets_sent=69072905i 1453196173154147048
> net icmp_inaddrmaskreps=0i,icmp_inaddrmasks=0i,icmp_incsumerrors=65i,icmp_indestunreachs=264807i,icmp_inechoreps=38i,icmp_inechos=1077178i,icmp_inerrors=4559i,icmp_inmsgs=1342870i,icmp_inparmprobs=0i,icmp_inredirects=6i,icmp_insrcquenchs=2i,icmp_intimeexcds=774i,icmp_intimestampreps=0i,icmp_intimestamps=0i,icmp_outaddrmaskreps=0i,icmp_outaddrmasks=0i,icmp_outdestunreachs=849867i,icmp_outechoreps=1077178i,icmp_outechos=3i,icmp_outerrors=0i,icmp_outmsgs=1928597i,icmp_outparmprobs=0i,icmp_outredirects=0i,icmp_outsrcquenchs=0i,icmp_outtimeexcds=1549i,icmp_outtimestampreps=0i,icmp_outtimestamps=0i,icmpmsg_intype0=38i,icmpmsg_intype11=774i,icmpmsg_intype3=264807i,icmpmsg_intype4=2i,icmpmsg_intype5=6i,icmpmsg_intype8=1077178i,icmpmsg_outtype0=1077178i,icmpmsg_outtype11=1549i,icmpmsg_outtype3=849867i,icmpmsg_outtype8=3i,ip_defaultttl=64i,ip_forwarding=2i,ip_forwdatagrams=0i,ip_fragcreates=17072i,ip_fragfails=0i,ip_fragoks=8536i,ip_inaddrerrors=0i,ip_indelivers=77465764i,ip_indiscards=0i,ip_inhdrerrors=0i,ip_inreceives=79567433i,ip_inunknownprotos=0i,ip_outdiscards=108775i,ip_outnoroutes=27i,ip_outrequests=70951694i,ip_reasmfails=52285i,ip_reasmoks=1327353i,ip_reasmreqds=2706991i,ip_reasmtimeout=44473i,tcp_activeopens=872419i,tcp_attemptfails=126726i,tcp_currestab=23i,tcp_estabresets=78613i,tcp_incsumerrors=0i,tcp_inerrs=90i,tcp_insegs=43809023i,tcp_maxconn=-1i,tcp_outrsts=113744i,tcp_outsegs=56961459i,tcp_passiveopens=1065318i,tcp_retranssegs=354967i,tcp_rtoalgorithm=1i,tcp_rtomax=120000i,tcp_rtomin=200i,udp_ignoredmulti=0i,udp_incsumerrors=0i,udp_indatagrams=33110797i,udp_inerrors=36303i,udp_noports=232164i,udp_outdatagrams=27459622i,udp_rcvbuferrors=36303i,udp_sndbuferrors=0i,udplite_ignoredmulti=0i,udplite_incsumerrors=0i,udplite_indatagrams=0i,udplite_inerrors=0i,udplite_noports=0i,udplite_outdatagrams=0i,udplite_rcvbuferrors=0i,udplite_sndbuferrors=0i 1453196173155777308
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

谢谢

monitoring graph influxdb grafana

1
推荐指数
1
解决办法
7410
查看次数

Influxdb在Influxdb中的数据库之间移动复制数据

我在Influxdb中有my_db1,my_db2,my_db3,现在是否可以通过查询在这些数据库之间移动或复制数据?

influxdb

1
推荐指数
1
解决办法
5206
查看次数

将带有标签的多个值插入到Influxdb中

我正在尝试收集smartctl指标并将它们推送到Influxdb.我很难为推入的值添加标签,以便标签和值位于正确的位置.

如果我这样做:

curl -POST 'http://localhost:8086/write?db=test' --data-binary 'smartctl Raw_Read_Error_Rate=19243395i,Spin_Up_Time=0i,Start_Stop_Count=149i,Reallocated_Sector_Ct=25i,Seek_Error_Rate=4735843653i,Power_On_Hours=41286i,Spin_Retry_Count=0i,Power_Cycle_Count=150i,End_to_End_Error=0i,Reported_Uncorrect=0i,Command_Timeout=12885098501i,High_Fly_Writes=0i,Airflow_Temperature_Cel=29i,G_Sense_Error_Rate=0i,Power_Off_Retract_Count=145i,Load_Cycle_Count=25668i,Temperature_Celsius=29i,Hardware_ECC_Recovered=19243395i,Current_Pending_Sector=0i,Offline_Uncorrectable=0i,UDMA_CRC_Error_Count=0i 1472412282915653274'
Run Code Online (Sandbox Code Playgroud)

没有标签:

SHOW TAG KEYS FROM "smartctl" (empty result)
Run Code Online (Sandbox Code Playgroud)

如何在同一个curl命令中添加标签,以便我得到类似的内容:

host=foo,disk_name="Seagate Blah"
Run Code Online (Sandbox Code Playgroud)

添加一些说明:

如果我使用一个逗号(,并设置一个值),那么他们所有的标签,而不是字段:

curl -POST 'http://localhost:8086/write?db=test' --data-binary 'smartctl,Raw_Read_Error_Rate=19243395i,Spin_Up_Time=0i,Start_Stop_Count=149i,Reallocated_Sector_Ct=25i,Seek_Error_Rate=4735843653i,Power_On_Hours=41286i,Spin_Retry_Count=0i,Power_Cycle_Count=150i,End_to_End_Error=0i,Reported_Uncorrect=0i,Command_Timeout=12885098501i,High_Fly_Writes=0i,Airflow_Temperature_Cel=29i,G_Sense_Error_Rate=0i,Power_Off_Retract_Count=145i,Load_Cycle_Count=25668i,Temperature_Celsius=29i,Hardware_ECC_Recovered=19243395i,Current_Pending_Sector=0i,Offline_Uncorrectable=0i,UDMA_CRC_Error_Count=0i value=0 1472412282915653274'
Run Code Online (Sandbox Code Playgroud)

(旁注:我也没看到我将设置为"smartctl"的值?)

我需要的是将上述所有内容设置为字段,但使用标记,以便我可以确定他们报告的主机.所以我可以这样做:

select Temperature_Celsius from smartctl where host=foo
Run Code Online (Sandbox Code Playgroud)

influxdb

1
推荐指数
1
解决办法
1万
查看次数

如何使用InfluxD恢复数据库

我正在使用涌入并创建备份使用

influxd backup -database grpcdb /opt/data
Run Code Online (Sandbox Code Playgroud)

我可以看到文件是在/ opt/data目录下创建的

现在,我想在同一台机器上恢复具有不同数据库名称的相同数据文件.

influxd restore -database grpcdb1 /opt/data
Run Code Online (Sandbox Code Playgroud)

但得到以下提到的错误

restore: -datadir is required to restore
Run Code Online (Sandbox Code Playgroud)

在这里,我提供相同的数据路径.不确定缺少什么.

backup influxdb

1
推荐指数
1
解决办法
2521
查看次数

如何在 influxdb 中重命名数据库?

  1. 查看 influxdb 网站,文档似乎没有涵盖典型 db 命令所具有的某些功能。有谁知道如何在 influxdb 中移动到新名称或彻底重命名数据库?
  2. 有没有人推荐哪个 R 包与 influxdb 一起使用?
  3. 有没有办法-precision rfc3339在配置中自动设置(人类可读的时间戳)来加载涌入?

database r influxdb

1
推荐指数
1
解决办法
3683
查看次数

测量名称中包含连字符时的 InfluxDB 查询问题

我正在使用 Java 并查询 InfluxDb,如下所示,

queryResult1 = influxDB.query(new Query("SELECT last(timestamp)  FROM vale" , eachDatabase));
Run Code Online (Sandbox Code Playgroud)

此语句工作正常,但是当名称具有任何特殊字符时,例如,如果测量名称是“vale-ab”而不是 vale,它将不起作用。

我得到的错误是:

java.lang.RuntimeException: {"error":"error parsing query: found -, expected ; at line 1, char 34"}
Run Code Online (Sandbox Code Playgroud)

知道如何在查询中转义测量名称。

java influxdb

1
推荐指数
1
解决办法
827
查看次数

将Null值视为零

我有一个关于Influxdb的查询,例如:

SELECT last("Shop1.balance")+last("Shop2.balance")+last("Shop2.balance") + last("Shop2.balance") FROM "balances" WHERE $timeFilter GROUP BY time($__interval) fill(previous)
Run Code Online (Sandbox Code Playgroud)

我收到graphana所有商店的总余额.它工作正常,直到我添加一个带有新数据的新商店:历史中某个时间间隔的新商店余额可以为空,整个计算值将为空.我无法重新组织我的数据库,但可能是我可以更改我的查询以接收日期,其中空间隔将被视为总和为零.

influxdb

1
推荐指数
1
解决办法
1101
查看次数

如何使用 Telegraf 监控远程系统指标?

我会很感激一些关于如何构建堆栈telegraf + InfluxDB + Grafana以监控一组机器的建议。

我的场景

我已经telegraf + InfluxDB + Grafana在一台我称之为“监控实例”的机器上成功安装了堆栈。

我的系统是一个 API,由一台运行 nodejs 的机器和一个 postgres 实例组成。

我可以从我的 Postgresql 数据库(使用 postgres 的 Telegraf 输入插件)和我的应用程序(我以 prometheus 格式公开一些指标,telegraf 使用 prometheus 输入插件提取)中收集指标。

我的问题和疑惑

  • 监控节点和 postgres 实例的系统指标(cpu、mem 等)的最佳方法是什么?我应该在这台机器上安装 Telegraf 代理吗?
  • 如何将本地数据发送到“监控实例”?
  • 本地电报代理应该直接写入 influxdb 还是应该将指标发送到安装在“监控实例”中的 Telefraf?

提前致谢。

monitoring influxdb grafana telegraf

1
推荐指数
1
解决办法
4375
查看次数

InfluxDB:仅将多个数据库中的一个从一个服务器实例移动到另一个

我有一个包含多个数据库,就像一个InfluxDB服务器实例sensorsnetworktelegraf等等。

这些数据库一起消耗了几十 GB,我只想将sensors数据库卸载到另一台更强大的机器上。

最简单的情况是我在另一台机器上创建一个新的 InfluxDB 服务器实例,然后将influxdb/data/sensors文件夹移动(rsync)到另一台机器上,然后从原来的机器上删除它。

虽然我还没有测试过,但我认为这不会那么容易;有一个data/_internal目录,然后是meta/meta.db文件和wal/*目录,这可能需要所有内容都保持“原样”,以便服务器实例启动时不会出错。

因为我说的是每个数据库有几十 GB,所以理想情况下,我只想挂载一个新的 ssd,复制文件/目录,然后将该新 ssd 挂载到另一台机器上,并将其直接用作新的数据源无需进一步复制。

我基本上希望我可以像将 rrd-tool 的rrd文件从一台机器移动到另一台机器一样简单地做到这一点。

这可能吗?如果没有,我有什么选择?

influxdb

1
推荐指数
1
解决办法
5008
查看次数

标签 统计

influxdb ×10

grafana ×2

monitoring ×2

backup ×1

database ×1

graph ×1

java ×1

r ×1

telegraf ×1