Statsd,Graphite和图表

我已经安装了Graphite和statsd,两者都运行良好。 我使用石墨/示例中的example-client.py来测量加载值并且没问题。
我开始用statsd进行testing,起初看起来不错,因为它生成了一些graphics,但现在看起来不太好。

首先,这是我的storage-schema.conf

 priority = 100 pattern = .* retentions = 1m:395d 

我使用这个命令发送数据到statsd:

 echo 'ssh.invalid_users:1|c'| nc -w 1 -u localhost 8126 

它会执行,我点击Graphite Web界面中的更新图表,它会生成一行,再次点击更新并且行消失。 像这个1和this2
如果我执行上一个命令5次,graphics线将达到2,它会实际保存它。 再次运行相同的命令两次,图线到达2并消失。
我无法find我错误configuration的内容。

预期的用途是这样的:

 tail -n 0 -f /var/log/auth.log|grep --line-buffered "Invalid user" | while read line; do echo "ssh.invalid_users:1|c" | nc -w 1 -u localhost 8126; done 

编辑:
在一个新的系统上,我重新安装了使用最新版本的石墨,碳,nodejs,statsd,它的行为是一样的。
尾随/opt/graphite/storage/log/carbon-cache/carbon-cache-a/query.log我得到:
cache query for "stats_counts.ssh.invalid_users" returned 0 values
cache query for "stats.ssh.invalid_users" returned 0 values每当我按下webapp 更新 。 我注意到,绘制线条时,它会随机说returned 1 values ,但会恢复为returned 0 values ,线条消失。

问题是存储架构保留:
retentions = 1m:395d – 取自石墨wiki http://graphite.wikidot.com/installation

我不得不使用retentions = 10:2160,60:10080,600:262974或类似的东西。 这考虑了每10秒保存的值。

另外,虽然在更改storage-schema.conf之后,我重新启动了石墨,但是我必须使用不同的度量标准名称,因为之前会保留相同的行为/保留(我可以重现这一点)。
所以,而不是echo 'ssh.invalid_users:1|c' ,我不得不使用
echo 'ssh.invalid_userstest2:1|c'