Commit 98cfdd4b authored by Paul Asmuth's avatar Paul Asmuth
Browse files

realtime widget wip

parent 1fabc4f4
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -120,10 +120,12 @@ require "fnordmetric/acceptors/udp_acceptor"

require "fnordmetric/gauges/dummy_gauge"
require "fnordmetric/gauges/numeric_gauge"
require "fnordmetric/gauges/realtime_gauge"

require "fnordmetric/widgets/widget"
require "fnordmetric/widgets/timeline_widget"
require "fnordmetric/widgets/numbers_widget"
require "fnordmetric/widgets/realtime_value_widget"

require "fnordmetric/metrics/redis_metric_calculations"
require "fnordmetric/metrics/redis_metric_modifiers"
+3 −6
Original line number Diff line number Diff line
@@ -3,8 +3,6 @@ class FnordMetric::DummyGauge < FnordMetric::MultiGauge
  def initialize(opts)   
    super(opts)

    @started = Time.now.to_i

    ticks  = [1.day, 1.hour] 
    series = [:fnord, :bar, :fu]

@@ -25,14 +23,13 @@ class FnordMetric::DummyGauge < FnordMetric::MultiGauge
      :autoupdate => 1
    ).on(:values_for) do |_series|
      {
        :fnord => { :value => 23 + rand(50 * running_since) },
        :fubar => { :value => 23 + rand(50 * running_since) }
        :fnord => { :value => 23 + rand(50) },
        :fubar => { :value => 23 + rand(50) }
      }
    end
  end

  def running_since
    Time.now.to_i - @started
  def react(event)
  end

end
 No newline at end of file
+21 −0
Original line number Diff line number Diff line
class FnordMetric::RealtimeGauge < FnordMetric::MultiGauge

  def initialize(opts)   
    super(opts)
    @started = Time.now.to_i

    realtime_value_widget(
      :tab => "Overview",
      :title => "Realtime #{key_nouns.last}"
    )
  end

  def react(event)
    #puts event.inspect
  end

  def running_since
    Time.now.to_i - @started
  end

end
 No newline at end of file
+2 −2
Original line number Diff line number Diff line
@@ -61,13 +61,13 @@ private

    [
      "FnordMetric",
      "#{klass.to_s.capitalize}Widget"
      "#{klass.to_s.camelize}Widget"
    ].join("::").constantize.new(opts).tap do |w|
      @widgets[w.key] = w
    end
  end

  %w(timeline numbers).each do |wid|
  %w(timeline numbers realtime_value realtime_feed).each do |wid|
    define_method("#{wid}_widget") do |options|
      widget(wid, options)
    end
+1 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ class FnordMetric::App < Sinatra::Base
    "fnordmetric.session_view.js" => "application/x-javascript",
    "fnordmetric.timeline_widget.js" => "application/x-javascript",
    "fnordmetric.numbers_widget.js" => "application/x-javascript",
    "fnordmetric.realtime_value_widget.js" => "application/x-javascript",
    "fnordmetric.bars_widget.js" => "application/x-javascript",
    "fnordmetric.toplist_widget.js" => "application/x-javascript",
    "fnordmetric.pie_widget.js" => "application/x-javascript",
Loading