snapstats 0.0.8 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3b4173e26fe094b94b9915c2a66d8f25d2ac3cf2
4
- data.tar.gz: f1781889c78345501c71d04262defa290a10c071
3
+ metadata.gz: cadf96e9d412ebab79f9543269216ab4b51e06b0
4
+ data.tar.gz: 4b0502cf74bdd9a87ca7636c77c3d1f6fb16a289
5
5
  SHA512:
6
- metadata.gz: 7fb4f552e6162053d20cb684502ac0ea029165b74ac81e6abd459d8de0fc2482d95e507cd18c65ac8b94d98426e14eac093f446fc07741ad464e4406e24a519a
7
- data.tar.gz: e4dc7bf545a41829226db38f0a2b7dad3c28e636fa664eb0f1cadff292c471a6ba36cd3290a763e9725ab117fe7592d5eb1805697e2fa5304748b08d1b01fcb1
6
+ metadata.gz: bd53d25f8516fa174181568cfb667da568153e0bd2acaa2362c61c6b86d9886aa2cba264fb58c43eecb6b10d14be4cc3b3edf271515b1ba1fbb9e3732b47b418
7
+ data.tar.gz: 6a332538ac8b45b71864b034c5bc58c0dcdcb1d94c54d1c13492ee9778b981e8a967f412a9b288480b2646b35f83d66ed53c956447059ca1cba7bc67ad1d0770
@@ -10,7 +10,7 @@ module Snapstats
10
10
  end
11
11
 
12
12
  def chart
13
- data = Snapstats::EventReader::Activity.fetch_all_chart
13
+ data = Snapstats::EventReader::Activity.fetch_all_chart_scale
14
14
  render json: {data: data.values, legend: data.keys}
15
15
  end
16
16
 
@@ -12,16 +12,18 @@ module Snapstats
12
12
 
13
13
  time_key = Time.current.to_i
14
14
 
15
+ rt_hash = @payload.keys.select{ |i| i.to_s.scan(/runtime/ui).present? }.reduce({}){ |sum, i| sum[i.to_s.gsub(/_runtime/ui, '').to_sym] = @payload[i].to_f.round(3); sum }
16
+
15
17
  value = {
16
18
  path: @payload[:path],
17
19
  ctrl: @payload[:controller],
18
20
  actn: @payload[:action],
19
- rntm: @payload.keys.select{ |i| i.to_s.scan(/runtime/ui).present? }.reduce({}){ |sum, i| sum[i.to_s.gsub(/_runtime/ui, '').to_sym] = @payload[i].to_f.round(3); sum },
21
+ rntm: rt_hash,
20
22
  os: @user_agent.platform,
21
23
  brwsr: @user_agent.browser,
22
24
  brver: @user_agent.version.to_s,
23
25
  ip: @payload[:ip],
24
- total: @payload[:render_time],
26
+ total: rt_hash.values.reduce(:+),
25
27
  email: @payload[:user_email],
26
28
  date: time_key
27
29
  }.to_json
@@ -4,6 +4,7 @@ module Snapstats
4
4
 
5
5
  class Activity
6
6
  include Virtus.model
7
+ extend EventReaderHelpers
7
8
 
8
9
  attribute :email, String
9
10
  attribute :path, String
@@ -41,18 +42,27 @@ module Snapstats
41
42
 
42
43
  fetch(Time.now.beginning_of_day).map{ |i|
43
44
 
44
- i.runtimes.reduce({}){ |sum, (k,v)| sum[k] = { value: v, date: i.date.to_i }; sum }
45
+ i.runtimes.reduce({}){ |sum, (k,v)| sum[k] = { value: v, date: i.date.to_i }; sum }
45
46
 
46
47
  }.reduce({}){ |sum, i|
47
48
 
48
49
  i.keys.each{ |rt| sum[rt].present? ? sum[rt] << i[rt] : sum[rt] = [ i[rt] ] }
49
50
  sum
50
51
  }
52
+ end
53
+
54
+ def self.fetch_all_chart_scale aprx=5
55
+ charts = fetch_all_chart
56
+
57
+ charts.keys.each { |runtime|
58
+ charts[runtime] = charts[runtime].group_by{ |i| floor_time(i[:date].to_i, aprx.minutes) }.map{|k,v| { :date => k, :value => v.max_by{|i| i[:value]}[:value] }}
59
+ }
51
60
 
61
+ charts
52
62
  end
53
63
 
54
- def self.fetch_flat_chart
55
- fetch(Time.now.beginning_of_day).map{ |i| { date: i.date.to_i, value: i.render_time } }
64
+ def self.fetch_flat_chart aprx=5
65
+ fetch(Time.now.beginning_of_day).group_by{ |i| floor_time(i[:date].to_i, aprx.minutes) }.map{|k,v| { :date => k, :value => v.max_by{|i| i.render_time.to_f }.render_time }}#.map{ |i| { date: i.date.to_i, value: i.render_time } }
56
66
  end
57
67
 
58
68
  end
@@ -1,3 +1,3 @@
1
1
  module Snapstats
2
- VERSION = "0.0.8"
2
+ VERSION = "0.0.9"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: snapstats
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - s3k
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-18 00:00:00.000000000 Z
11
+ date: 2015-03-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails