metricize 0.5.3 → 0.5.4

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: 11b9ae196c2d2bcad3ff04ae224c63088fb29e11
4
- data.tar.gz: 60b74ef5f38a7913d87673343ba9e14e7cc79e03
3
+ metadata.gz: 01a5e5a2c6e58a774f31b33dfd8395150cf3165a
4
+ data.tar.gz: dc8586370108272fd6ccad88af185d4ff6c311e1
5
5
  SHA512:
6
- metadata.gz: 7c8acaafe1f44c9f64fc64fd4a5517290db45cef43b222584711c375f01150c2fee2b4f18bae55ce526f44a3e1f9a7dca35a5ade9d41f5605c9acd2b39f1db24
7
- data.tar.gz: 9c84fe2d4baa5ec3198e491f768358622afb577c4227736116459d5724e14cab4365407a20701c31ac2a962da6210a0cd7c5dfa48ff4092d24979fe0867fc330
6
+ metadata.gz: 34e646619bd6bf41da902fb793498d81a9d9e82f834c662e0de3edef749a9ef92e8ef9208092e3375f1113b352c8412e74958e7b9231c79023d1acd09e99fe15
7
+ data.tar.gz: 6c8e9227d21962f8389a7d73fcccc770e975c5e794b89cc37516017daf60ebf0867bad5fa27176bdbf49595b726bae5301b7cd9a5121eecfabf766cd3a85f826
@@ -6,8 +6,9 @@ module Metricize
6
6
  @password = options.fetch(:password)
7
7
  @username = options.fetch(:username)
8
8
  @remote_url = options[:remote_url] || 'metrics-api.librato.com/v1/metrics'
9
- @remote_timeout = options[:remote_timeout] || 10
10
- @batch_size = options[:batch_size] || 5000
9
+ @remote_timeout = (options[:remote_timeout] || 12).to_i
10
+ @remote_requests = (options[:remote_requests] || 4).to_i
11
+ @batch_size = (options[:batch_size] || 250000).to_i
11
12
  establish_logger(options)
12
13
  initialize_redis(options)
13
14
  end
@@ -20,9 +21,11 @@ module Metricize
20
21
 
21
22
  def process_metric_queue
22
23
  with_error_handling do
23
- queue = lshift_queue
24
- return if queue.empty?
25
- store_metrics(add_aggregate_info(queue))
24
+ @remote_requests.times do |n|
25
+ batch = lshift_queue
26
+ return if batch.empty?
27
+ store_metrics(add_aggregate_info(batch))
28
+ end
26
29
  end
27
30
  end
28
31
 
@@ -1,3 +1,3 @@
1
1
  module Metricize
2
- VERSION = "0.5.3"
2
+ VERSION = "0.5.4"
3
3
  end
@@ -30,5 +30,6 @@ Gem::Specification.new do |spec|
30
30
  spec.add_runtime_dependency "json"
31
31
  spec.add_runtime_dependency "redis"
32
32
  spec.add_runtime_dependency "ascii_charts"
33
+ spec.add_runtime_dependency "pry"
33
34
 
34
35
  end
@@ -58,6 +58,7 @@ describe Metricize do
58
58
 
59
59
  it "limits the number of metrics forwarded to the remote in a single request" do
60
60
  forwarder.instance_variable_set(:@batch_size, 3)
61
+ forwarder.instance_variable_set(:@remote_requests, 1)
61
62
  7.times { | n| client.increment('stat.name' + n.to_s) }
62
63
  forwarder.go!
63
64
  expect(forwarder.send(:queue_length)).to eq 4
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metricize
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt McNeil
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-04 00:00:00.000000000 Z
11
+ date: 2013-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -164,6 +164,20 @@ dependencies:
164
164
  - - '>='
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: pry
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - '>='
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
167
181
  description: Simple client/forwarder system to aggregate metrics and periodically
168
182
  send them to a stats service
169
183
  email: