;数据源;InfluxDB数据源

InfluxDB数据源

InfluxDB是一个开源时间序列数据库(TSDB),由InfluxData.它针对操作监控、应用程序指标、物联网传感器数据和实时分析等领域的时间序列数据的快速、高可用性存储和检索进行了优化。

本主题解释特定于此数据源的选项、变量、查询和其他选项。指添加数据源获取如何向Grafana添加数据源的说明。只有具有组织管理员角色的用户才能添加数据源。

数据源选项

要访问数据源设置,请将鼠标悬停在配置(齿轮)图标,然后点击数据源,然后单击数据源。

InfluxDB数据源选项因其而异查询语言您选择:InfluxQL或Flux。

注意:虽然不是必需的,但将语言选择附加到数据源名称后是一个很好的实践。例如:

  • InfluxDB-InfluxQL
  • InfluxDB-Flux

InfluxQL(经典的InfluxDB查询)

如果使用的是InfluxQL查询语言,则适用这些选项。如果您正在使用Flux,请参阅Grafana中的Flux支持

的名字 描述
的名字 数据源名称。这就是在面板和查询中引用数据源的方式。我们推荐这样的东西InfluxDB-InfluxQL
默认的 默认数据源意味着将为新面板预先选择它。
URL InfluxDB API的HTTP协议、IP地址和端口。InfluxDB API端口默认为8086。
访问 不支持直接访问浏览器。使用“服务器(默认)”,否则数据源将无法正常工作。
允许饼干 将被转发到数据源的cookie。所有其他cookie将被删除。
数据库 要查询的桶的ID,从桶的页面的InfluxDB UI。
用户 用于登录到InfluxDB的用户名。
密码 用于查询上面bucket的令牌,从标记页面的InfluxDB UI。
HTTP方式 如何查询数据库(得到帖子HTTP动词)。的帖子谓词允许执行繁重的查询,该查询将使用得到动词。默认是得到
最小时间间隔 (可选)参考最小时间间隔
Max系列 (可选)限制Grafana处理的系列/表的数量。降低这个数字以防止滥用,如果您有很多小的时间序列,并且没有全部显示出来,则增加这个数字。默认值为1000。

通量

有关数据源设置和在Grafana中使用Flux的信息,请参阅Grafana中的Flux支持

最小时间间隔

按时间间隔划分的汽车组的下限。建议设置为写频,例如1米如果数据每分钟都被写入。也可以在仪表板面板中数据源选项下重写/配置此选项。需要注意的是,这个值必须格式化为一个数字,后面跟着一个有效的时间标识符,例如。1米(1分钟)或30年代(30秒)。支持以下时间标识符:

标识符 描述
y 一年
w
d 一天
h 小时
一分钟
年代 第二个
女士 毫秒

查询语言

您可以使用InfluxQL或Flux查询InfluxDB:

  • InfluxQL是一种用于查询InfluxDB的类SQL语言,使用SQL用户熟悉的SELECT、FROM、WHERE和GROUP BY等语句。InfluxQL可在InfluxDB 1.0以后使用。
  • 通量提供了比InfluxQL更广泛的功能,不仅支持查询,还支持用于数据塑造、字符串操作、连接非influxdb数据源等的内置函数,而且还支持处理时间序列数据。它更类似于带有函数风格的JavaScript。

为了帮助您选择最适合您需要的语言,这里有一个比较Flux vs InfluxQL,为什么InfluxData创建Flux

InfluxQL查询编辑器

通过单击面板标题并单击进入编辑模式编辑.编辑器允许您选择指标和标记。

InfluxQL查询编辑器

过滤数据(WHERE)

控件右侧的加号图标,可添加标记筛选器在哪里条件。您可以通过单击标记键然后选择来删除标记过滤器——删除标签过滤器——

正则表达式匹配

您可以为指标名称或标记筛选器值键入正则表达式模式。请确保正则表达式模式以正斜杠(/).Grafana自动调整筛选标记条件,以使用InfluxDB正则表达式匹配条件操作符(= ~).

字段和聚合函数

选择行,您可以指定要使用的字段和函数。如果按时间分组,就需要一个聚合函数。有些函数,如导数,需要一个聚合函数。编辑器试图简化和统一查询的这一部分。例如:

上面生成了以下InfluxDB选择条款:

SELECT derivative(mean("value"), 10s) / 10as "REQ/s" FROM ....

选择多个字段

使用加号按钮并选择Field > Field来添加另一个select子句。您还可以指定一个星号选择所有字段。

集团

要按标记分组,请单击group by行末尾的加号图标。从出现的下拉列表中选择一个标记。可以删除“分组分组”,方法是单击标签然后点击x图标。

文本编辑模式(RAW)

你可以切换到原始查询模式点击汉堡图标,然后切换编辑器模式

如果你使用原始查询,确保你的查询至少有在美元timeFilter.此外,始终使用按时间分组和聚合函数,否则InfluxDB很容易返回数十万个数据点,导致浏览器挂起。

别名模式

  • $m =替换为测量名称
  • $measurement =替换为测量名称
  • $1 - $9 =用部分测量名称替换(如果用圆点分隔测量名称)
  • $col =已替换为列名
  • $tag_exampletag =替换为exampletag标签。语法是标签* yourTagName美元(必须从美元的标记*).要在alias BY字段中使用标记作为别名,则必须在查询中使用标记对BY进行分组。
  • 还可以使用[[tag_hostname]]模式替换语法。例如,在ALIAS BY字段中使用此文本主持人:[[tag_hostname]]会替换为主机名每个图例值的标签值和一个示例图例值将是:主持人:server1

查询日志

中提供从InfluxDB中查询和显示日志数据探索,而在日志面板在仪表板。选择InfluxDB数据源,然后输入查询以显示日志。

日志查询

日志资源管理器测量/字段按钮)的旁边显示了一个测量值和字段的列表。选择包含日志数据的所需度量,然后选择Explore应该使用哪个字段来显示日志消息。

返回结果后,日志面板显示一个日志行列表和一个柱状图,其中x轴显示时间,y轴显示频率/计数。

控件右侧的加号图标可添加筛选器测量/字段按钮或条件。您可以通过单击第一个选择来删除标记过滤器——删除过滤器

注释

注释允许您在图形之上覆盖丰富的事件信息。使用Dashboard菜单中的Annotations视图添加注释查询。

查询示例:

选择标题,描述从事件WHERE $timeFilter ORDER BY时间ASC

对于InfluxDB,需要输入与上面示例类似的查询。的在美元timeFilter组件是必需的。如果只选择一列,则不需要在列映射字段中输入任何内容。的标签Field可以是逗号分隔的字符串。