我正在使用Cassandra后端学习KairosDB。我遇到了以下问题:
我正在尝试以下列方式保存指标:
available_methods = json.dumps(available_methods)
data = []
for definition in archive_policy.definition:
data.append({'name': '%s-archives' % metric,
'timestamp': time.time(),
'value': archive_policy.back_window,
'tags': {'metric': self._to_hex(metric),
'timespan': float(definition.timespan),
'granularity_points': '%s_%s' % (
float(definition.granularity),
definition.points),
'aggregation_methods': available_methods}})
因此,度量标准不会随所有输入一起发布,其中只有名称。我尝试发布指标,其中'aggregation_methods'等于字符串,并且工作正常。
所以,问题是:是否可以在标签中保存dict或json格式?
为了记录,我正在使用pyKairosDB python客户端。
THX
答案 0 :(得分:0)
比照http://kairosdb.github.io/kairosdocs/FAQ.html#why-can-tags-only-handle-ascii-characters-and
这将在未来的版本中发展变得更加宽松,但是一些特定的字符应该被禁止的是列(:)和等于(=),因为它们被用作字段分隔符,用于从标签和度量标准名称构造Cassandra Row密钥
比照http://kairosdb.github.io/kairosdocs/CassandraSchema.html
我可以问你为什么需要在标签中放置一个JSON对象?