【问题标题】:Whitespace in statsd metric namestatsd 指标名称中的空格
【发布时间】:2015-04-16 12:17:25
【问题描述】:

在将数据推送到 statsd 收集器时,我需要将空格作为指标名称的一部分传递。规范没有提及是否允许这样做,但是插入带有空格的值是行不通的。

ref locale:23.5|g

https://github.com/b/statsd_spec

有特殊字符转义之类的变通办法吗?

【问题讨论】:

    标签: statsd


    【解决方案1】:

    您将 statsd 指标发送到哪里? Statsd 可能允许在度量名称中使用空格,但我相信 Graphite 不允许。

    https://answers.launchpad.net/graphite/+question/171766:

    这些指标以提供的名称存储在磁盘上。这是一个核心 当前 Whisper 存储系统的一部分。

    还有http://mingbowan.blogspot.com.es/2012/08/enable-special-character-support-in.html

    Graphite 不支持“”(空格)等特殊字符, “/”斜线等,因为它希望一切都只是 ASCII 拆分/处理它们,然后根据指标名称创建目录。

    很抱歉,我找不到权威来源。

    我认为最好的办法是用“_”之类的其他字符替换指标中的空格。

    【讨论】:

    • 为了安全起见,我将替换指标名称中的空格。如果我需要更改持久性实现,这似乎是避免兼容性问题的更好选择。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多