FnordMetric排行榜计量器消失

44

我在尝试做什么

我正在使用FnordMetric Classic,通过 fnordmetric Ruby on Rails gem,如Railscasts #378所示。

我想要列出我的“热门页面”,其中一个页面是我的 Web 应用程序中的一种内容类型。

问题

无论使用哪个版本,在生产环境和开发环境中,我称之为热门榜计量器的内容都会消失

可以在下面的截图中看到这一点,“热门页面排行榜”的列表“顶部关键字”为空,而应该填充有最常访问的页面。

Screenshot -- the toplist gauge is empty, but it should not

几点观察结果

  • 当我触发一个事件时,例如访问受监视的应用程序上的页面,访问的页面将出现在 fnordmetric 热门榜计量器中。但是几分钟后,它就会消失。
  • 我尝试增加存储持续时间设置,但没有效果。
  • 正如屏幕截图所示,样品数量不为零(为 2.00)。因此,数据必须在数据库中,但未显示出来。

源代码

这是创建此计量器的相关源代码:

 # script/fnordmetric_app.rb
 require 'fnordmetric'
 
 FnordMetric.namespace :my_web_app do
   toplist_gauge :popular_pages, title: "Popular Pages"
   event :show_page do
     observe :popular_pages, data[:title]
   end
   # ...
 end
 
 FnordMetric::Web.new(port: 4242, use: middleware)
 FnordMetric::Worker.new
 FnordMetric.run

有人知道我做错了什么吗?


1
我的建议是使用 https://github.com/ankane/blazer,这是一个简单的Rails应用程序,它可以存储SQL查询并让您使用这些查询构建图形化仪表板。 - Blair Anderson
1
你是否遇到缓存限制,导致结果比预期更快地输出?此外,你在开发和生产中使用的是哪个服务器? - Phil
2
我投票关闭这个问题,因为它没有答案,已经三年了,而且提问者显然对答案不再感兴趣。如果有人回答这个问题也无法从中获益。 - jamesc
1
由于这个问题,我已经停止使用fnordmetric。如果解决方案对其他人有帮助,我当然愿意帮忙解决。但是,看起来fnordmetric已经继续前进了。此外,相应的问题已经关闭且没有解决方案。https://github.com/asmuth/clip/issues/171。随意关闭此问题。 - fiedl
1个回答

1
也许您发送的数据中title属性为空?您可以使用redis-cli检查数据是否存在于Redis中(建议使用MONITOR命令)。此外,FordMetrics现已停用,现在是一个名为clip的图表库。我会手动在数据库中编写它,而不是在Redis中。具体来说,您可以创建一个包含kind(字符串)和data(jsonb)的events表,在products#show中创建一个事件,其种类为product_show,数据为product.attributes,就像Ryan Bates在railscast中所做的那样。在您的管理员界面中进行查询即可。
Event
  .where(kind: "product_show")
  .group("data->>'id'")
  .select("count(*) as count, array_agg(data->>'title')[1] as title)
  • 渲染这些产品

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接