歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> 學習Linux

InfluxDB學習之InfluxDB的HTTP API查詢操作,influxdbapi

InfluxDB學習之InfluxDB的HTTP API查詢操作,influxdbapi

InfluxDB學習之InfluxDB的HTTP API查詢操作,influxdbapi


在 InfluxDB學習 的上一篇文章:InfluxDB學習之InfluxDB的HTTP API寫入操作 中,我們介紹了使用InfluxDB的HTTP API進行數據寫入操作的過程,本文我們再來介紹下使用InfluxDB的HTTP API進行數據查詢操作的過程。更多InfluxDB詳細教程請看:InfluxDB系列學習教程目錄

InfluxDB技術交流群:580487672(點擊加入)

操作

一、說明

官方文檔上介紹說,使用HTTP API進行查詢是比較初級的一種方式。推薦使用第三方語言庫和客戶端管理程序進行查詢操作。

 

二、InfluxDB進行HTTP API查詢方法

使用HTTP API在InfluxDB進行查詢主要是發送 GET 請求到 InfluxDB的 /query 端,調用示例如下所示:

curl -GET 'http://localhost:8086/query?pretty=true' --data-urlencode "db=mydb" 
--data-urlencode "q=SELECT value FROM cpu_load_short WHERE region='us-west'"

參數db指定了需查詢的數據庫,q代表了需執行的查詢語句。

在頁面中也提供了生成HTTP 請求URL的方法,如下所示:

image

在界面上輸入語句後,點擊生成url就會生成http請求URL。

在浏覽器執行後,會返回json格式的串。

如果查詢出錯的話,則會返回關鍵詞“error”+錯誤信息。

三、InfluxDB進行HTTP API查詢多條數據

我們可能需要用InfluxDB進行多條查詢,HTTP API提供的多條查詢的格式如下所示:

curl -G 'http://localhost:8086/query?pretty=true' --data-urlencode "db=mydb" --data-urlencode "q=SELECT value FROM cpu_load_short WHERE region='us-west';
SELECT count(value) FROM cpu_load_short WHERE region='us-west'"

格式與單條查詢相同,只是在多條語句之間要用分號“;”分隔。

返回值也是包含結果的json串。

四、InfluxDB HTTP 查詢的格式化輸出

1)規定時間格式

在使用HTTP查詢時可以使用 epoch 參數指定輸出的時間格式。可選值有 epoch=[h,m,s,ms,u,ns]。

例如:

curl -G 'http://localhost:8086/query' --data-urlencode "db=mydb" 
--data-urlencode "epoch=s" --data-urlencode "q=SELECT value FROM cpu_load_short WHERE region='us-west'"

這樣會獲取到以秒為單位的時間數據。

2)指定每次查詢數據大小

可以使用 chunk_size 參數來指定每次結果的大小。比如,我要結果每次返回200個點的數據,則如下所示:

curl -G 'http://localhost:8086/query' --data-urlencode "db=mydb" --data-urlencode "chunk_size=200" --data-urlencode "q=SELECT value FROM cpu_load_short WHERE region='us-west'"

這樣查詢結果就會返回200個點的數據。

好了,有關 InfluxDB 有關HTTP API操作的相關知識就先為大家介紹到這裡,更多有關InfluxDB的內容請看 Linux大學接下來的文章。

更多InfluxDB詳細教程請看:InfluxDB系列學習教程目錄

InfluxDB技術交流群:580487672(點擊加入)

http://xxxxxx/Linuxjc/1173300.html TechArticle

Copyright © Linux教程網 All Rights Reserved