Commit 10bc3707 authored by Paul Asmuth's avatar Paul Asmuth
Browse files

timeseries gauge: simple value/timeseries rendering working :)

parent 56e682fb
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -2,17 +2,19 @@ class FnordMetric::TimeseriesGauge < FnordMetric::Gauge

  def render(namespace, event)
    interval = parse_interval(event["interval"])
    colors = ["#2F635E", "#606B36", "#727070", "#936953", "#CD645A", "#FACE4F", "#42436B"]

    # colors = ["#2F635E", "#606B36", "#727070", "#936953", "#CD645A", "#FACE4F", "#42436B"]
    # @opts["series"][skey]["color"] ||= colors.unshift(colors.pop).first
    @series_colors = Hash[series_gauges.map do |k,g| 
      [k, colors.unshift(colors.pop).first]
    end]

    @series_render = series_gauges.map do |series, gauge|
      {
        :name  => series,
        :color => "#0066cc",
        :color => @series_colors[series],
        :data  => gauge.values_in(interval).to_a
          .sort{ |a,b| a[0] <=> b[0] }
          .map { |t,v| { :x => t, :y => v||0 } }.reverse
          .map { |t,v| { :x => t, :y => v.to_i } }
      }
    end

+4 −1
Original line number Diff line number Diff line
@@ -27,7 +27,8 @@ class FnordMetric::Worker

  def process_event(event_id, event_data)
    EM.next_tick do      
      parse_json(event_data).tap do |event|                
      event = parse_json(event_data)
      if event
        event[:_time] ||= Time.now.to_i
        event[:_eid] = event_id
        announce_event(event)
@@ -73,6 +74,8 @@ class FnordMetric::Worker
    event = Yajl::Parser.new(:symbolize_keys => true).parse(data)
    event[:_namespace] = event[:_namespace].to_sym if event[:_namespace]
    event
  rescue Yajl::ParseError => e
    FnordMetric.error "invalid json: #{e.to_s}"; false
  end

  def redis
+1 −1
Original line number Diff line number Diff line
@@ -24,7 +24,7 @@ FnordMetric.views.gaugeView = (function(gauge_name){
      ]
    });

    var now = (new Date()).getTime();
    var now = parseInt((new Date()).getTime() / 1000);
    var init_interval = (now-(3600*24)) + "-" + now;
    load_interval(init_interval);
  }