执行 Flux 查询
此页面记录了早期版本的 InfluxDB OSS。InfluxDB OSS v2 是最新的稳定版本。 请参阅等效的 InfluxDB v2 文档: 执行查询。
有多种方法可以使用 InfluxDB 和 Chronograf v1.8+ 执行 Flux 查询。本指南涵盖了不同的选项
在尝试这些方法之前,请确保通过在 InfluxDB 配置文件的
[http]
部分中设置flux-enabled = true
来启用 Flux。
Chronograf 的数据浏览器
Chronograf v1.8+ 在其数据浏览器中支持 Flux。Flux 查询可以在 Chronograf 用户界面内构建、执行和可视化。
Influx CLI
要使用 InfluxDB 1.8+ influx
CLI 启动交互式 Flux 读取-求值-打印循环 (REPL),请使用以下标志运行 influx
命令
-type=flux
-path-prefix=/api/v2/query
如果您的 InfluxDB 实例上启用了身份验证,请使用 -username
标志提供您的 InfluxDB 用户名,并使用 -password
标志提供您的密码。
进入交互式 Flux REPL
influx -type=flux -path-prefix=/api/v2/query
influx -type=flux \
-path-prefix=/api/v2/query \
-username myuser \
-password PasSw0rd
任何 Flux 查询都可以在 REPL 中执行。
通过参数提交 Flux 查询
Flux 查询也可以使用 influx
CLI 的 -type=flux
选项和 -execute
参数作为参数传递给 Flux REPL。随附的字符串将作为 Flux 查询执行,结果将在您的终端中输出。
influx -type=flux \
-path-prefix=/api/v2/query \
-execute '<flux query>'
influx -type=flux \
-path-prefix=/api/v2/query \
-username myuser \
-password PasSw0rd \
-execute '<flux query>'
通过 STDIN 提交 Flux 查询
Flux 查询可以通过 STDIN 管道输入到 influx
CLI 中。查询结果将在您的终端中输出。
echo '<flux query>' | influx -type=flux -path-prefix=/api/v2/query
echo '<flux query>' | influx -type=flux \
-path-prefix=/api/v2/query \
-username myuser \
-password PasSw0rd
InfluxDB API
Flux 可用于通过 InfluxDB 的 /api/v2/query
端点查询 InfluxDB。查询的数据以带注释的 CSV 格式返回。
在您的请求中,设置以下内容
Accept
标头为application/csv
Content-type
标头为application/vnd.flux
- 如果您的 InfluxDB 实例上启用了身份验证,则
Authorization
标头为Token <username>:<password>
这允许您以纯文本形式 POST Flux 查询,并接收带注释的 CSV 响应。
以下是使用 Flux 查询 InfluxDB 的 curl
命令示例
curl -XPOST localhost:8086/api/v2/query -sS \
-H 'Accept:application/csv' \
-H 'Content-type:application/vnd.flux' \
-d 'from(bucket:"telegraf")
|> range(start:-5m)
|> filter(fn:(r) => r._measurement == "cpu")'
curl -XPOST localhost:8086/api/v2/query -sS \
-H 'Accept:application/csv' \
-H 'Content-type:application/vnd.flux' \
-H 'Authorization: Token <username>:<password>' \
-d 'from(bucket:"telegraf")
|> range(start:-5m)
|> filter(fn:(r) => r._measurement == "cpu")'
此页是否对您有帮助?
感谢您的反馈!