Commit 368766f7 authored by Paul Asmuth's avatar Paul Asmuth
Browse files

timeseries_gauge: render basic numbers

parent 58a12753
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -8,11 +8,19 @@ class FnordMetric::TimeseriesGauge < FnordMetric::Gauge
      [k, colors.unshift(colors.pop).first]
    end]

    @series_numbers = Hash.new{ |h,k| h[k]={} }

    @series_render = series_gauges.map do |series, gauge|
      gauge_vals = gauge.values_in(interval).to_a

      @series_numbers[series][:total] = gauge_vals.inject(0) do |s, (t, v)|
        s += v.to_i
      end

      {
        :name  => series,
        :color => @series_colors[series],
        :data  => gauge.values_in(interval).to_a
        :data  => gauge_vals
          .sort{ |a,b| a[0] <=> b[0] }
          .map { |t,v| { :x => t, :y => v.to_i } }
      }
+1 −0
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@
-> timeseries-gauge/widget: set resolution via "tick buttons" 
-> timeseries-gauge: realtime tab w/ moving average
-> timeseries-widget: render with stroke=3 + points if xticks < 100
-> timeseries-widget: tooltip -> show key noun

-> split up fnordmetric.namespace block into multiple files
-> show notification when connection lost
+1 −0
Original line number Diff line number Diff line
@@ -119,6 +119,7 @@ FnordMetric.util.formatPercentValue = function(value){
}

FnordMetric.util.formatGaugeValue = function(gauge_key, value){
  if(!gauge_key){ gauge_key = ""; }
  if(gauge_key.slice(0,8) === '__time__'){
    return FnordMetric.util.formatTimeValue(value);
  } else if(gauge_key.slice(0,11) === '__percent__'){
+17 −21
Original line number Diff line number Diff line
@@ -6,31 +6,27 @@
    %li.active{"data-tab" => "Overview"}
      %a{:href => "#"} Overview

  .mywidget

  .widget.NumbersWidget{:style => "margin-bottom: 20px; overflow-x: hidden; overflow-y: hidden; width:1700px;"}
    .headbar.small1= @opts["title"]
    .numbers_container{:rel => "Queries", :style => "width: 380px; "}
      .title Queries
      .number{:data => "2.6666666666666665", :rel => "3"}
        %span.desc 3sec avg.
        %span.value 2.67
      .number{:data => "3.2", :rel => "5"}
        %span.desc 5sec avg.
        %span.value 3.20
      .number{:data => "3.4000000000000004", :rel => "15"}
        %span.desc 15sec avg.
        %span.value 3.40
      .number{:data => "3.3666666666666667", :rel => "30"}
        %span.desc 30sec avg.
        %span.value 3.37

  .widget_timeseries

  .headbar.small= @opts[:title]
  - @series_numbers.each do |series, nums|
    %div
      .numbers_container
        .title= series

        .number{:data => nums[:total], :"data-current" => 0}
          %span.desc Total
          %span.value 0


:gaugejs

  FnordMetric.widgets.timeseriesWidget().render({
    title: "Fnord!!!!",
    elem: $('.mywidget'),
    default_style: 'flow',
    elem: $('.widget_timeseries'),
    default_style: 'stack',
    series: #{@series_render.to_json}
  });

  FnordMetric.util.updateNumbers('.report_view', 4);
 No newline at end of file