0

tags我有一个 python 工作者,只要值存在,它就会向 influxDB 发送测量值。当此tags值不存在时,我将其设置tags为空字典。

def emit_measurements(self, values: Dict, tags: Optional[Dict[str, str]] = None):

    if tags is None:
        tags = {}
    
    measurement = {
        "measurement": "some_name",
        "tags": tags,
        "time": datetime.now(tz=pytz.UTC).isoformat(),
        "fields": values,
    }

    self._influx_client.write_points([measurement])

在我的流入数据库中,每当不存在时,我都会看到字段的正确值tags,但是一旦发出一个事件,tags所有字段都会变为 0 并保持不变。

(我假设测量表在tags出现时会损坏,这会导致每个字段值都为 0)

tags在某些事件不发出它的情况下,这可以是可选的吗?

4

1 回答 1

1

是的,标签是测量的可选元数据。

引用标签文档

InfluxDB 数据结构中记录元数据的键值对。标签是数据结构的一个可选部分,但它们对于存储经常查询的元数据很有用;标签被编入索引,因此对标签的查询是高效的。查询提示:将标签与字段进行比较;字段没有被索引。

于 2020-10-20T13:27:35.003 回答