【问题标题】:save tag in json format in Kairosdb在 Kairosdb 中以 json 格式保存标签
【发布时间】:2015-04-22 05:31:53
【问题描述】:

我正在学习带有 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 客户端。

谢谢

【问题讨论】:

    标签: python json cassandra kairosdb


    【解决方案1】:

    实际上并非所有字符都可以在指标名称和标签键/值中使用。

    参见。 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 对象放入标签中?

    【讨论】:

      猜你喜欢
      • 2015-02-06
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 2019-02-16
      相关资源
      最近更新 更多