问题描述
我有一个python worker,只要存在该值,它就会使用tags
值将度量发送到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
是否可以是可选的?
解决方法
是的,标签是用于测量的可选元数据。
记录的InfluxDB数据结构中的键值对 元数据。标签是数据结构的可选部分,但它们 可用于存储常用查询的元数据;标签被索引所以 标签查询表现出色。查询提示:将标签与字段进行比较; 字段未编制索引。