我需要随时跟踪我网站上的活跃用户数量。为此,每次用户登录时我都会增加一个名为“users.loggedin”的密钥,并在每次用户注销时减少它。
我通过 StatD 将我的指标发送到 Graphite。但是根据我读过的“增量”给出了每个时间间隔的变化,因此我可以看到石墨仪表板中的变化,但它在一段时间后再次显示为零。
为 StatsD 配置 Graphite
您是否将 Graphite 配置为与 StatsD 一起使用? 您必须在 Graphite 配置中指定您希望它如何处理您从 StatsD 发送的数据。这很重要,因为 Graphite 可以对您的计数进行平均而不是求和。
如果发送稀疏或“突发”数据
确认您的 xFilesFactor 足够低,即使空值率很高,聚合也会产生非空值。例如,100, null, null, null, null, null
如果 XFilesFactor 高于 1/6,则前 10 秒内有 100 个请求,而一分钟内剩余 50 秒内没有请求,将导致当数据老化时,其存储总计为 null。 使用 statsd 推荐的石墨配置可以解决这个问题,但最好了解...因为这可能会导致数据丢失。
保存架构或聚合更改
如果您在存储任何指标后更改了石墨模式或聚合设置(在 Whisper = 石墨的存储中),您需要删除指标的 .wsp 文件(石墨将重新创建它们)或运行whisper-resize.py
.
验证设置
您可以通过在 .wsp 文件上运行 Whisper-info.py 来针对某些耳语数据验证设置。在 /graphite/storage/whisper/ Run: 中找到您的指标之一的 .wsp 文件whisper-info.py my_metric_data.wsp
。Whisper-info.py 输出应该告诉你更多关于存储设置是如何工作的。
在您确认您的数据准确无误后,我将继续在UI中创建您想要的图表:
您可能需要为此使用hitcount()函数。
这篇文章很好地涵盖了你所追求的东西(即使你没有使用 StatsD)。