我需要在任何时间跟踪我网站上的活跃用户数量。为此,每次用户登录时,我都会递增一个名为“users.loggedin”的密钥,并在每次用户注销时递减。
我通过StatD将我的指标发送到Graphite。但根据我所读的“增量”给出了每个时间间隔的变化,因此我可以看到Graphite Dashboard中的变化,但它在一段时间后再次显示为零。
答案 0 :(得分:2)
为StatsD配置Graphite
Did you configure Graphite for usage with StatsD?您必须在Graphite配置中指定您希望它如何处理从StatsD发送的数据。这很重要,因为Graphite可能平均您的计数而不是求和它们。
如果发送稀疏或“突发”数据
确认您的xFilesFactor足够低,即使使用高空值,聚合也会产生非空值。例如,前10秒内有100个请求,一分钟内剩余50秒内没有任何请求会导致100, null, null, null, null, null
的存储,如果XFilesFactor高于1 /,则数据老化时将归零。 6。 使用statsd推荐的石墨配置来处理这个,但最好知道......因为这可能会导致数据丢失。
保存架构或聚合更改
如果在存储任何指标后(在whisper = graphite的存储中)更改了石墨架构或聚合设置,则需要删除指标的.wsp文件(graphite会重新创建它们)或运行{{1} }。
验证设置
您可以通过在.wsp文件上运行whisper-info.py来针对某些私语数据验证设置。在/ graphite / storage / whisper /中找到您的某个指标的.wsp文件
运行:whisper-resize.py
。 whisper-info.py输出应该告诉您有关存储设置如何工作的更多信息。
在您确认数据准确无误后,我会继续在用户界面中创建您想要的图表:
您可能需要使用hitcount()功能。
This post很好地涵盖了你的成就(即使你没有使用StatsD)。