Carbon 1.1.x added the feature for tagging series。我试图通过以下内容为系列添加标签:
curl -vv -X POST "http://10.x.x.x:8080/tags/tagSeries" --data-urlencode 'path=qa-dev.stats.UpdateStats.responses.OK.calls.mean_rate;env=qa-dev'
然后,如果我这样做:curl -vv "http://10.x.x.x:8080/tags/findSeries?pretty=1&expr=env=qa-dev"
,我得到了我期望的输出:
[
"qa-dev.stats.UpdateStats.responses.OK.calls.mean_rate;env=qa-dev"
* Connection #0 to host 10.19.118.17 left intact
]
但是,如果我尝试通过我的渲染器使用aliasByTags
轮询此系列,则代码不存在:
http://internal.graphite.abc.com/render/?target=aliasByTags(qa-dev.stats.UpdateStats.responses.OK.calls.mean_rate,%20%27env%27)&from=-6h&until=now&format=json&maxDataPoints=1440
上面将提取数据点,但在返回数据末尾表示的唯一标记是名称:
"tags": {"name": "qa-dev.stats.UpdateStats.responses.OK.calls.mean_rate"}
。
我希望在标签列表中看到env=qa-dev
,但事实并非如此。
我做错了吗?
答案 0 :(得分:0)
标签api由carbon用于将标记系列添加到graphite-web中的内部数据库中,它不打算将标记添加到现有的未标记系列中。
要使用标记系列,您需要更新收集器/生产者以生成标记系列。
您的想法是,如果您使用标签,则不需要在系列名称中嵌入env,因此您的系列会像stats.UpdateStats.responses.OK.calls.mean_rate;env=qa-dev
一样。