InfluxDB 和 Grafana 的基本 where 子句
Basic where clause with InfluxDB and Grafana
我正在为一项真正简单的任务而苦苦挣扎:
使用 InfluxDB 创建 SELECT property_a WHERE property_b == "my_value"
。
我有以下数据结构:
type RegionsJsonData struct {
Data string `json:"data"`
Stato string `json:"stato"`
CodiceRegione int `json:"codice_regione"`
DenominazioneRegione string `json:"denominazione_regione"`
Lat float64 `json:"lat"`
Long float64 `json:"long"`
RicoveratiConSintomi int `json:"ricoverati_con_sintomi"`
TerapiaIntensiva int `json:"terapia_intensiva"`
TotaleOspedalizzati int `json:"totale_ospedalizzati"`
IsolamentoDomiciliare int `json:"isolamento_domiciliare"`
TotaleAttualmentePositivi int `json:"totale_attualmente_positivi"`
NuoviAttualmentePositivi int `json:"nuovi_attualmente_positivi"`
DimessiGuariti int `json:"dimessi_guariti"`
Deceduti int `json:"deceduti"`
TotaleCasi int `json:"totale_casi"`
Tamponi int `json:"tamponi"`
Datetime time.Time
}
此结构将填充一些数据,然后我使用以下语句将结构插入 InfluxDB:
var m map[string]interface{} = make(map[string]interface{})
m["codice_regione"] = provinceData[i].CodiceRegione
m["denominazione_regione"] = provinceData[i].DenominazioneRegione
m["lat"] = provinceData[i].Lat
m["long"] = provinceData[i].Long
m["ricoverati_con_sintomi"] = provinceData[i].RicoveratiConSintomi
m["terapia_intensiva"] = provinceData[i].TerapiaIntensiva
m["totale_ospedalizzati"] = provinceData[i].TotaleOspedalizzati
m["isolamento_domiciliare"] = provinceData[i].IsolamentoDomiciliare
m["totale_attualmente_positivi"] = provinceData[i].TotaleAttualmentePositivi
m["nuovi_attualmente_positivi"] = provinceData[i].NuoviAttualmentePositivi
m["dimessi_guariti"] = provinceData[i].DimessiGuariti
m["deceduti"] = provinceData[i].Deceduti
m["totale_casi"] = provinceData[i].TotaleCasi
m["tamponi"] = provinceData[i].Tamponi
pts[i] = client.Point{
Measurement: "regions_data",
Tags: nil,
Time: provinceData[i].Datetime,
Fields: m}
数据已插入 InfluxDB,我可以使用 Grafana 显示一些图表。
但是,我需要为每个 "denominazione_regione" 字段创建一个图表。
因此,我从 Grafana 进行了以下查询:
但不幸的是没有显示任何数据,我是不是漏掉了什么?
如何使用 InfluxDB
从 Grafana
创建 WHERE
子句?
正如@JanGaraj 所指出的,如果您想进行一些查询,您需要将字段保存为标签,如下所示:
var m map[string]interface{} = make(map[string]interface{})
m["total_deaths"] = worldData[i].TotalDeaths
m["total_cases"] = worldData[i].TotalCases
m["new_deaths"] = worldData[i].NewDeaths
m["new_cases"] = worldData[i].NewCases
pts[i] = client.Point{
Measurement: "all_world_data",
Tags: map[string]string{"nation": worldData[i].State},
Time: worldData[i].Date,
Fields: m}
您可以 运行 查询如下:
我正在为一项真正简单的任务而苦苦挣扎:
使用 InfluxDB 创建 SELECT property_a WHERE property_b == "my_value"
。
我有以下数据结构:
type RegionsJsonData struct {
Data string `json:"data"`
Stato string `json:"stato"`
CodiceRegione int `json:"codice_regione"`
DenominazioneRegione string `json:"denominazione_regione"`
Lat float64 `json:"lat"`
Long float64 `json:"long"`
RicoveratiConSintomi int `json:"ricoverati_con_sintomi"`
TerapiaIntensiva int `json:"terapia_intensiva"`
TotaleOspedalizzati int `json:"totale_ospedalizzati"`
IsolamentoDomiciliare int `json:"isolamento_domiciliare"`
TotaleAttualmentePositivi int `json:"totale_attualmente_positivi"`
NuoviAttualmentePositivi int `json:"nuovi_attualmente_positivi"`
DimessiGuariti int `json:"dimessi_guariti"`
Deceduti int `json:"deceduti"`
TotaleCasi int `json:"totale_casi"`
Tamponi int `json:"tamponi"`
Datetime time.Time
}
此结构将填充一些数据,然后我使用以下语句将结构插入 InfluxDB:
var m map[string]interface{} = make(map[string]interface{})
m["codice_regione"] = provinceData[i].CodiceRegione
m["denominazione_regione"] = provinceData[i].DenominazioneRegione
m["lat"] = provinceData[i].Lat
m["long"] = provinceData[i].Long
m["ricoverati_con_sintomi"] = provinceData[i].RicoveratiConSintomi
m["terapia_intensiva"] = provinceData[i].TerapiaIntensiva
m["totale_ospedalizzati"] = provinceData[i].TotaleOspedalizzati
m["isolamento_domiciliare"] = provinceData[i].IsolamentoDomiciliare
m["totale_attualmente_positivi"] = provinceData[i].TotaleAttualmentePositivi
m["nuovi_attualmente_positivi"] = provinceData[i].NuoviAttualmentePositivi
m["dimessi_guariti"] = provinceData[i].DimessiGuariti
m["deceduti"] = provinceData[i].Deceduti
m["totale_casi"] = provinceData[i].TotaleCasi
m["tamponi"] = provinceData[i].Tamponi
pts[i] = client.Point{
Measurement: "regions_data",
Tags: nil,
Time: provinceData[i].Datetime,
Fields: m}
数据已插入 InfluxDB,我可以使用 Grafana 显示一些图表。 但是,我需要为每个 "denominazione_regione" 字段创建一个图表。
因此,我从 Grafana 进行了以下查询:
但不幸的是没有显示任何数据,我是不是漏掉了什么?
如何使用 InfluxDB
从 Grafana
创建 WHERE
子句?
正如@JanGaraj 所指出的,如果您想进行一些查询,您需要将字段保存为标签,如下所示:
var m map[string]interface{} = make(map[string]interface{})
m["total_deaths"] = worldData[i].TotalDeaths
m["total_cases"] = worldData[i].TotalCases
m["new_deaths"] = worldData[i].NewDeaths
m["new_cases"] = worldData[i].NewCases
pts[i] = client.Point{
Measurement: "all_world_data",
Tags: map[string]string{"nation": worldData[i].State},
Time: worldData[i].Date,
Fields: m}
您可以 运行 查询如下: