telemetry 1.0.7 → 1.0.8

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -8,6 +8,8 @@ InstalledFiles
8
8
  _yardoc
9
9
  coverage
10
10
  doc/
11
+ coverage
12
+ InstalledFiles
11
13
  lib/bundler/man
12
14
  pkg
13
15
  rdoc
@@ -15,3 +17,5 @@ spec/reports
15
17
  test/tmp
16
18
  test/version_tmp
17
19
  tmp
20
+ telemetryd_config.rb
21
+
@@ -50,99 +50,99 @@ module Telemetry
50
50
  @@end_interval.yield if @@end_interval
51
51
  end
52
52
 
53
- def barchart(tag, frequency = 0, &block)
53
+ def barchart(tag, frequency = 0, offset=nil, &block)
54
54
  @@tasks ||= []
55
- @@tasks << [ :barchart, tag, frequency, block ]
55
+ @@tasks << [ :barchart, tag, frequency, offset, block ]
56
56
  end
57
57
 
58
- def countdown(tag, frequency = 0, &block)
58
+ def countdown(tag, frequency = 0, offset=nil, &block)
59
59
  @@tasks ||= []
60
- @@tasks << [ :countdown, tag, frequency, block ]
60
+ @@tasks << [ :countdown, tag, frequency, offset, block ]
61
61
  end
62
62
 
63
- def gauge(tag, frequency = 0, &block)
63
+ def gauge(tag, frequency = 0, offset=nil, &block)
64
64
  @@tasks ||= []
65
- @@tasks << [ :gauge, tag, frequency, block ]
65
+ @@tasks << [ :gauge, tag, frequency, offset, block ]
66
66
  end
67
67
 
68
- def graph(tag, frequency = 0, &block)
68
+ def graph(tag, frequency = 0, offset=nil, &block)
69
69
  @@tasks ||= []
70
- @@tasks << [ :graph, tag, frequency, block ]
70
+ @@tasks << [ :graph, tag, frequency, offset, block ]
71
71
  end
72
72
 
73
- def icon(tag, frequency = 0, &block)
73
+ def icon(tag, frequency = 0, offset=nil, &block)
74
74
  @@tasks ||= []
75
- @@tasks << [ :icon, tag, frequency, block ]
75
+ @@tasks << [ :icon, tag, frequency, offset, block ]
76
76
  end
77
77
 
78
- def iframe(tag, frequency = 0, &block)
78
+ def iframe(tag, frequency = 0, offset=nil, &block)
79
79
  @@tasks ||= []
80
- @@tasks << [ :iframe, tag, frequency, block ]
80
+ @@tasks << [ :iframe, tag, frequency, offset, block ]
81
81
  end
82
82
 
83
- def log(tag, frequency = 0, &block)
83
+ def log(tag, frequency = 0, offset=nil, &block)
84
84
  @@tasks ||= []
85
- @@tasks << [ :log, tag, frequency, block ]
85
+ @@tasks << [ :log, tag, frequency, offset, block ]
86
86
  end
87
87
 
88
- def map(tag, frequency = 0, &block)
88
+ def map(tag, frequency = 0, offset=nil, &block)
89
89
  @@tasks ||= []
90
- @@tasks << [ :map, tag, frequency, block ]
90
+ @@tasks << [ :map, tag, frequency, offset, block ]
91
91
  end
92
92
 
93
- def multigauge(tag, frequency = 0, &block)
93
+ def multigauge(tag, frequency = 0, offset=nil, &block)
94
94
  @@tasks ||= []
95
- @@tasks << [ :multigauge, tag, frequency, block ]
95
+ @@tasks << [ :multigauge, tag, frequency, offset, block ]
96
96
  end
97
97
 
98
- def multivalue(tag, frequency = 0, &block)
98
+ def multivalue(tag, frequency = 0, offset=nil, &block)
99
99
  @@tasks ||= []
100
- @@tasks << [ :multivalue, tag, frequency, block ]
100
+ @@tasks << [ :multivalue, tag, frequency, offset, block ]
101
101
  end
102
102
 
103
- def servers(tag, frequency = 0, &block)
103
+ def servers(tag, frequency = 0, offset=nil, &block)
104
104
  @@tasks ||= []
105
- @@tasks << [ :servers, tag, frequency, block ]
105
+ @@tasks << [ :servers, tag, frequency, offset, block ]
106
106
  end
107
107
 
108
- def table(tag, frequency = 0, &block)
108
+ def table(tag, frequency = 0, offset=nil, &block)
109
109
  @@tasks ||= []
110
- @@tasks << [ :table, tag, frequency, block ]
110
+ @@tasks << [ :table, tag, frequency, offset, block ]
111
111
  end
112
112
 
113
- def text(tag, frequency = 0, &block)
113
+ def text(tag, frequency = 0, offset=nil, &block)
114
114
  @@tasks ||= []
115
- @@tasks << [ :text, tag, frequency, block ]
115
+ @@tasks << [ :text, tag, frequency, offset, block ]
116
116
  end
117
117
 
118
- def tickertape(tag, frequency = 0, &block)
118
+ def tickertape(tag, frequency = 0, offset=nil, &block)
119
119
  @@tasks ||= []
120
- @@tasks << [ :tickertape, tag, frequency, block ]
120
+ @@tasks << [ :tickertape, tag, frequency, offset, block ]
121
121
  end
122
122
 
123
- def timechart(tag, frequency = 0, &block)
123
+ def timechart(tag, frequency = 0, offset=nil, &block)
124
124
  @@tasks ||= []
125
- @@tasks << [ :timechart, tag, frequency, block ]
125
+ @@tasks << [ :timechart, tag, frequency, offset, block ]
126
126
  end
127
127
 
128
- def timeline(tag, frequency = 0, &block)
128
+ def timeline(tag, frequency = 0, offset=nil, &block)
129
129
  @@tasks ||= []
130
- @@tasks << [ :timeline, tag, frequency, block ]
130
+ @@tasks << [ :timeline, tag, frequency, offset, block ]
131
131
  end
132
132
 
133
- def timeseries(tag, frequency = 0, &block)
133
+ def timeseries(tag, frequency = 0, offset=nil, &block)
134
134
  @@tasks ||= []
135
- @@tasks << [ :timeseries, tag, frequency, block ]
135
+ @@tasks << [ :timeseries, tag, frequency, offset, block ]
136
136
  end
137
137
 
138
- def upstatus(tag, frequency = 0, &block)
138
+ def upstatus(tag, frequency = 0, offset=nil, &block)
139
139
  @@tasks ||= []
140
- @@tasks << [ :upstatus, tag, frequency, block ]
140
+ @@tasks << [ :upstatus, tag, frequency, offset, block ]
141
141
  end
142
142
 
143
- def value(tag, frequency = 0, &block)
143
+ def value(tag, frequency = 0, offset=nil, &block)
144
144
  @@tasks ||= []
145
- @@tasks << [ :value, tag, frequency, block ]
145
+ @@tasks << [ :value, tag, frequency, offset, block ]
146
146
  end
147
147
 
148
148
  def run_scheduled_flow_updates
@@ -154,13 +154,26 @@ module Telemetry
154
154
 
155
155
  @@tasks.each do |task|
156
156
  @@h = {}
157
- variant, tag, frequency, block = task
157
+ variant, tag, frequency, offset, block = task
158
+ now = Time.now
158
159
 
159
160
  # Check whether we should wait an interval before running
160
161
  if frequency > 0
161
162
  #puts "Frequency is #{frequency} now #{Time.now.to_i} next #{@@next_run_at[tag]}"
162
- next if @@next_run_at[tag] && @@next_run_at[tag] >= Time.now.to_i
163
- @@next_run_at[tag] = Time.now.to_i + frequency.to_i
163
+ next if @@next_run_at[tag] && @@next_run_at[tag] >= now.to_i
164
+ @@next_run_at[tag] = now.to_i + frequency
165
+
166
+ # If an offset is defined then allign runtimes to the offset
167
+ # How close you can get to the desired offset depends on the global interval. So set it relatively small
168
+ # when using this feature
169
+ if offset and offset >= 0 and offset <= 86400
170
+ this_morning = Time.new(now.year, now.month, now.day).to_i
171
+ time_since_offset = now.to_i - this_morning - offset
172
+ time_since_offset += 86400 if time_since_offset < 0
173
+
174
+ @@next_run_at[tag] -= time_since_offset % frequency
175
+ # puts "#{now.to_i} #{@@next_run_at[tag]}"
176
+ end
164
177
  end
165
178
 
166
179
  # Execute the flow
@@ -172,10 +185,10 @@ module Telemetry
172
185
  values = @@h.merge({variant: variant})
173
186
 
174
187
  # Skip if the values haven't changed (though send 1/day regardless)
175
- if @@last_values[tag] != values || @@values_expires_at[tag] < Time.now.to_i
188
+ if @@last_values[tag] != values || @@values_expires_at[tag] < now.to_i
176
189
  @@buffer[tag] = values
177
190
  @@last_values[tag] = values # Save the value so we dont update unless it changes
178
- @@values_expires_at[tag] = Time.now.to_i + 86400 # Force an update 1/day
191
+ @@values_expires_at[tag] = now.to_i + 86400 # Force an update 1/day
179
192
  end
180
193
  end
181
194
 
@@ -1,3 +1,3 @@
1
1
  module Telemetry
2
- VERSION = "1.0.7"
2
+ VERSION = "1.0.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: telemetry
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.0.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-25 00:00:00.000000000 Z
12
+ date: 2013-07-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: oj
@@ -79,7 +79,6 @@ files:
79
79
  - lib/telemetry/telemetry.rb
80
80
  - lib/telemetry/version.rb
81
81
  - telemetry.gemspec
82
- - telemetryd_config.rb
83
82
  homepage: http://www.telemetryapp.com
84
83
  licenses: []
85
84
  post_install_message:
data/telemetryd_config.rb DELETED
@@ -1,6 +0,0 @@
1
- interval 1
2
- api_token "130be0e02baf48892b82d41e9b7f1a19"
3
-
4
- value "demo_cadusd", 10 do
5
- set value: rand(1000)
6
- end