fozzie 0.0.17 → 0.0.18
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +191 -4
- data/doc/lib/fozzie.html +4 -0
- data/doc/lib/fozzie/interface.html +2 -2
- data/doc/lib/fozzie/socket.html +6 -4
- data/fozzie.gemspec +9 -6
- data/lib/fozzie.rb +5 -0
- data/lib/fozzie/socket.rb +3 -1
- data/lib/fozzie/version.rb +1 -1
- metadata +36 -34
data/README.md
CHANGED
@@ -1,6 +1,193 @@
|
|
1
|
-
Fozzie
|
2
|
-
===========
|
1
|
+
# Fozzie
|
3
2
|
|
4
|
-
Ruby gem for registering
|
3
|
+
Ruby gem for registering statistics to Statsd in various ways.
|
5
4
|
|
6
|
-
|
5
|
+
## Basic Usage
|
6
|
+
|
7
|
+
Send through statistics depending on the type you want to provide:
|
8
|
+
|
9
|
+
### Increment counter
|
10
|
+
|
11
|
+
Stats.increment 'wat'
|
12
|
+
|
13
|
+
### Decrement counter
|
14
|
+
|
15
|
+
Stats.decrement 'wat'
|
16
|
+
|
17
|
+
### Decrement counter - provide a value as integer
|
18
|
+
|
19
|
+
Stats.count 'wat', 5
|
20
|
+
|
21
|
+
### Basic timing - provide a value in milliseconds
|
22
|
+
|
23
|
+
Stats.timing 'wat', 500
|
24
|
+
|
25
|
+
### Timings - provide a block to time against (inline and do syntax supported)
|
26
|
+
|
27
|
+
Stats.time 'wat' { sleep 5 }
|
28
|
+
|
29
|
+
Stats.time_to_do 'wat' do
|
30
|
+
sleep 5
|
31
|
+
end
|
32
|
+
|
33
|
+
Stats.time_for 'wat' { sleep 5 }
|
34
|
+
|
35
|
+
### Events - register different events
|
36
|
+
|
37
|
+
|
38
|
+
#### Commits
|
39
|
+
|
40
|
+
Stats.commit
|
41
|
+
|
42
|
+
Stats.committed
|
43
|
+
|
44
|
+
#### Builds
|
45
|
+
|
46
|
+
Stats.built
|
47
|
+
|
48
|
+
Stats.build
|
49
|
+
|
50
|
+
#### Deployments
|
51
|
+
|
52
|
+
Stats.deployed
|
53
|
+
|
54
|
+
With a custom app:
|
55
|
+
|
56
|
+
Stats.deployed 'watapp'
|
57
|
+
|
58
|
+
Stats.deploy
|
59
|
+
|
60
|
+
With a custom app:
|
61
|
+
|
62
|
+
Stats.deploy 'watapp'
|
63
|
+
|
64
|
+
#### Custom
|
65
|
+
|
66
|
+
Stats.event 'pull'
|
67
|
+
|
68
|
+
With a custom app:
|
69
|
+
|
70
|
+
Stats.event 'pull', 'watapp'
|
71
|
+
|
72
|
+
### Boolean result - pass a value to be true or false, and increment on true
|
73
|
+
|
74
|
+
Stats.increment_on 'wat', duck.valid?
|
75
|
+
|
76
|
+
## Sampling
|
77
|
+
|
78
|
+
Each of the above methods accepts a sample rate as the last argument (before any applicable blocks), e.g:
|
79
|
+
|
80
|
+
Stats.increment 'wat', 10
|
81
|
+
|
82
|
+
Stats.decrement 'wat', 10
|
83
|
+
|
84
|
+
Stats.count 'wat', 5, 10
|
85
|
+
|
86
|
+
## Namespaces
|
87
|
+
|
88
|
+
Fozzie supports the following namespaces as default
|
89
|
+
|
90
|
+
Stats.increment 'wat'
|
91
|
+
S.increment 'wat'
|
92
|
+
Statistics.increment 'wat'
|
93
|
+
Warehouse.increment 'wat'
|
94
|
+
|
95
|
+
You can customise this via the YAML configuration (see instructions below)
|
96
|
+
|
97
|
+
## Configuration
|
98
|
+
|
99
|
+
Fozzie is configured via a YAML or by setting a block against the Fozzie namespace.
|
100
|
+
|
101
|
+
### YAML
|
102
|
+
|
103
|
+
Create a `fozzie.yml` within a `config` folder on the root of your app, which contains your settings for each env. Simple, verbose example below.
|
104
|
+
|
105
|
+
development:
|
106
|
+
appname: wat
|
107
|
+
host: '127.0.0.1'
|
108
|
+
port: 8125
|
109
|
+
namespaces: %w{Foo Bar Wat}
|
110
|
+
test:
|
111
|
+
appname: wat
|
112
|
+
host: 'localhost'
|
113
|
+
port: 8125
|
114
|
+
namespaces: %w{Foo Bar Wat}
|
115
|
+
production:
|
116
|
+
appname: wat
|
117
|
+
host: 'stats.wat.com'
|
118
|
+
port: 8125
|
119
|
+
namespaces: %w{Foo Bar Wat}
|
120
|
+
|
121
|
+
### Configure block
|
122
|
+
|
123
|
+
Fozzie.configure do |config|
|
124
|
+
config.appname = "wat"
|
125
|
+
config.host = "127.0.0.1"
|
126
|
+
config.port = 8125
|
127
|
+
end
|
128
|
+
|
129
|
+
## Middleware
|
130
|
+
|
131
|
+
To time and register the controller actions within your Rails application, Fozzie provides some middleware.
|
132
|
+
|
133
|
+
### Rack
|
134
|
+
|
135
|
+
require 'rack'
|
136
|
+
require 'fozzie'
|
137
|
+
|
138
|
+
app = Rack::Builder.new {
|
139
|
+
use Fozzie::Rack::Middleware
|
140
|
+
lambda { |env| [200, {'Content-Type' => 'text/plain'}, 'OK'] }
|
141
|
+
}
|
142
|
+
|
143
|
+
### Rails
|
144
|
+
|
145
|
+
Based on the Rack middleware above, but is more involved in it's construction of the bucket value.
|
146
|
+
|
147
|
+
Add the following to your `config/environment.rb`
|
148
|
+
|
149
|
+
Rails::Initializer.run do |config|
|
150
|
+
config.middleware.use 'Fozzie::Rails::Middleware'
|
151
|
+
end
|
152
|
+
|
153
|
+
## Bucket name prefixes
|
154
|
+
|
155
|
+
Fozzie will construct bucket name prefixes according to your settings and environment. Example would be
|
156
|
+
|
157
|
+
Stats.increment 'foo'
|
158
|
+
|
159
|
+
Would be represented as the following Graphite bucket:
|
160
|
+
|
161
|
+
wat.your-computer-name.development.foo
|
162
|
+
|
163
|
+
When working on your development machine. This allows multiple application instances, in different environments, to be distinguished easily, and collated in Graphite quickly.
|
164
|
+
|
165
|
+
## Low level behaviour
|
166
|
+
|
167
|
+
The current implementation of Fozzie wraps the sending of the statistic in a timeout and rescue block, which prevent long host lookups (i.e. if your stats server disappears) and minimises impact on your code or application if something is erroring at a low level.
|
168
|
+
|
169
|
+
Fozzie will try to log these errors, but only if a logger has been applied (which by default it does not). Examples:
|
170
|
+
|
171
|
+
require 'logger'
|
172
|
+
Fozzie.logger = Logger.new(STDOUT)
|
173
|
+
|
174
|
+
require 'logger'
|
175
|
+
Fozzie.logger = Logger.new 'log/fozzie.log'
|
176
|
+
|
177
|
+
This may change, depending on feedback and more production experience.
|
178
|
+
|
179
|
+
## Credits
|
180
|
+
|
181
|
+
Currently supported and maintained by [Marc Watts](marc.watts@lonelyplanet.co.uk) @Lonely Planet Online.
|
182
|
+
|
183
|
+
Big thanks to:
|
184
|
+
|
185
|
+
* [Mark Barger](mark.barger@lonelyplanet.co.uk) for support in trying to make this Gem useful.
|
186
|
+
|
187
|
+
* [Etsy](http://codeascraft.etsy.com/) who's [Statsd](https://github.com/etsy/statsd) product has enabled us to come such a long way in a very short period of time. We love Etsy.
|
188
|
+
|
189
|
+
* [https://github.com/reinh](https://github.com/reinh/statsd) for his [statsd](https://github.com/reinh/statsd) Gem.
|
190
|
+
|
191
|
+
## Comments and Feedback
|
192
|
+
|
193
|
+
Please [contact](marc.watts@lonelyplanet.co.uk) me on anything... improvements will be needed and are welcomed greatly.
|
data/doc/lib/fozzie.html
CHANGED
@@ -105,6 +105,8 @@ designed to make gathering stastistics from applications easy, fast, and effecti
|
|
105
105
|
<a class="pilcrow" href="#section-5">¶</a>
|
106
106
|
</div>
|
107
107
|
<p>Set a logger</p>
|
108
|
+
|
109
|
+
<p><code>Fozzie.logger = Logger.new(STDOUT)</code></p>
|
108
110
|
</td>
|
109
111
|
<td class=code>
|
110
112
|
<div class='highlight'><pre> <span class="k">def</span> <span class="nf">logger</span><span class="o">=</span><span class="p">(</span><span class="n">logger</span><span class="p">)</span>
|
@@ -118,6 +120,8 @@ designed to make gathering stastistics from applications easy, fast, and effecti
|
|
118
120
|
<a class="pilcrow" href="#section-6">¶</a>
|
119
121
|
</div>
|
120
122
|
<p>Accessor for logger</p>
|
123
|
+
|
124
|
+
<p><code>Fozzie.logger.warn ‘foo’</code></p>
|
121
125
|
</td>
|
122
126
|
<td class=code>
|
123
127
|
<div class='highlight'><pre> <span class="k">def</span> <span class="nf">logger</span>
|
@@ -273,8 +273,8 @@
|
|
273
273
|
|
274
274
|
</td>
|
275
275
|
<td class=code>
|
276
|
-
<div class='highlight'><pre> <span class="k">def</span> <span class="nf">event</span><span class="p">(</span><span class="
|
277
|
-
<span class="n">timing</span> <span class="o">[</span><span class="s2">"event"</span><span class="p">,</span> <span class="
|
276
|
+
<div class='highlight'><pre> <span class="k">def</span> <span class="nf">event</span><span class="p">(</span><span class="n">type</span><span class="p">,</span> <span class="n">app</span> <span class="o">=</span> <span class="kp">nil</span><span class="p">)</span>
|
277
|
+
<span class="n">timing</span> <span class="o">[</span><span class="s2">"event"</span><span class="p">,</span> <span class="n">type</span><span class="o">.</span><span class="n">to_s</span><span class="p">,</span> <span class="n">app</span><span class="o">]</span><span class="p">,</span> <span class="no">Time</span><span class="o">.</span><span class="n">now</span><span class="o">.</span><span class="n">usec</span>
|
278
278
|
<span class="k">end</span>
|
279
279
|
|
280
280
|
<span class="k">end</span>
|
data/doc/lib/fozzie/socket.html
CHANGED
@@ -39,7 +39,9 @@
|
|
39
39
|
|
40
40
|
</td>
|
41
41
|
<td class=code>
|
42
|
-
<div class='highlight'><pre><span class="
|
42
|
+
<div class='highlight'><pre><span class="nb">require</span> <span class="s1">'socket'</span>
|
43
|
+
|
44
|
+
<span class="k">module</span> <span class="nn">Fozzie</span>
|
43
45
|
<span class="k">module</span> <span class="nn">Socket</span>
|
44
46
|
|
45
47
|
<span class="no">RESERVED_CHARS_REGEX</span> <span class="o">=</span> <span class="sr">/[\:\|\@]/</span>
|
@@ -57,13 +59,13 @@
|
|
57
59
|
<p>Creates the Statsd key from the given values, and sends to socket (depending on sample rate)</p>
|
58
60
|
</td>
|
59
61
|
<td class=code>
|
60
|
-
<div class='highlight'><pre> <span class="k">def</span> <span class="nf">send</span><span class="p">(</span><span class="n">stat</span><span class="p">,</span> <span class="n">delta</span><span class="p">,</span> <span class="
|
62
|
+
<div class='highlight'><pre> <span class="k">def</span> <span class="nf">send</span><span class="p">(</span><span class="n">stat</span><span class="p">,</span> <span class="n">delta</span><span class="p">,</span> <span class="n">type</span><span class="p">,</span> <span class="n">sample_rate</span><span class="p">)</span>
|
61
63
|
<span class="n">stat</span> <span class="o">=</span> <span class="o">[</span><span class="n">stat</span><span class="o">].</span><span class="n">flatten</span><span class="o">.</span><span class="n">compact</span><span class="o">.</span><span class="n">collect</span><span class="p">(</span><span class="o">&</span><span class="ss">:to_s</span><span class="p">)</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s1">'.'</span><span class="p">)</span><span class="o">.</span><span class="n">downcase</span>
|
62
64
|
<span class="n">stat</span> <span class="o">=</span> <span class="n">stat</span><span class="o">.</span><span class="n">gsub</span><span class="p">(</span><span class="s1">'::'</span><span class="p">,</span> <span class="s1">'.'</span><span class="p">)</span><span class="o">.</span><span class="n">gsub</span><span class="p">(</span><span class="no">RESERVED_CHARS_REGEX</span><span class="p">,</span> <span class="s1">'_'</span><span class="p">)</span>
|
63
65
|
|
64
66
|
<span class="n">k</span> <span class="o">=</span> <span class="o">[</span><span class="no">Fozzie</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">data_prefix</span><span class="p">,</span> <span class="n">stat</span><span class="o">].</span><span class="n">compact</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s1">'.'</span><span class="p">)</span>
|
65
67
|
<span class="n">k</span> <span class="o"><<</span> <span class="s2">":"</span>
|
66
|
-
<span class="n">k</span> <span class="o"><<</span> <span class="o">[</span><span class="n">delta</span><span class="p">,</span> <span class="
|
68
|
+
<span class="n">k</span> <span class="o"><<</span> <span class="o">[</span><span class="n">delta</span><span class="p">,</span> <span class="n">type</span><span class="o">].</span><span class="n">join</span><span class="p">(</span><span class="s1">'|'</span><span class="p">)</span>
|
67
69
|
<span class="n">k</span> <span class="o"><<</span> <span class="s1">'@%s'</span> <span class="o">%</span> <span class="n">sample_rate</span><span class="o">.</span><span class="n">to_s</span> <span class="k">if</span> <span class="n">sample_rate</span> <span class="o"><</span> <span class="mi">1</span>
|
68
70
|
|
69
71
|
<span class="n">sampled</span><span class="p">(</span><span class="n">sample_rate</span><span class="p">)</span> <span class="p">{</span> <span class="n">send_to_socket</span><span class="p">(</span><span class="n">k</span><span class="o">.</span><span class="n">strip</span><span class="p">)</span> <span class="p">}</span>
|
@@ -115,7 +117,7 @@
|
|
115
117
|
</td>
|
116
118
|
<td class=code>
|
117
119
|
<div class='highlight'><pre> <span class="k">def</span> <span class="nf">socket</span>
|
118
|
-
<span class="vi">@socket</span> <span class="o">||=</span> <span class="no">UDPSocket</span><span class="o">.</span><span class="n">new</span>
|
120
|
+
<span class="vi">@socket</span> <span class="o">||=</span> <span class="o">::</span><span class="no">UDPSocket</span><span class="o">.</span><span class="n">new</span>
|
119
121
|
<span class="k">end</span>
|
120
122
|
|
121
123
|
<span class="k">end</span>
|
data/fozzie.gemspec
CHANGED
@@ -5,10 +5,13 @@ require "fozzie/version"
|
|
5
5
|
Gem::Specification.new do |s|
|
6
6
|
s.name = "fozzie"
|
7
7
|
s.version = Fozzie::VERSION
|
8
|
-
s.authors = ["Marc Watts"]
|
9
|
-
s.email = ["
|
10
|
-
s.summary = %q{Statsd gem
|
11
|
-
s.description = %q{
|
8
|
+
s.authors = ["Marc Watts", "Mark Barger"]
|
9
|
+
s.email = ["marc.watts@lonelyplanet.co.uk"]
|
10
|
+
s.summary = %q{Statsd Ruby gem from Lonely Planet Online}
|
11
|
+
s.description = %q{
|
12
|
+
Gem to make statistics sending to Statsd from Ruby applications simple and efficient as possible.
|
13
|
+
Inspired by the original ruby-statsd gem by Etsy, currently used by Lonely Planet Online.
|
14
|
+
}
|
12
15
|
|
13
16
|
s.rubyforge_project = "fozzie"
|
14
17
|
|
@@ -16,7 +19,7 @@ Gem::Specification.new do |s|
|
|
16
19
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
17
20
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
18
21
|
s.require_paths = ["lib"]
|
19
|
-
|
22
|
+
|
20
23
|
s.add_dependency 'sys-uname'
|
21
24
|
|
22
25
|
s.add_development_dependency 'rake'
|
@@ -28,7 +31,7 @@ Gem::Specification.new do |s|
|
|
28
31
|
s.add_development_dependency 'simplecov'
|
29
32
|
s.add_development_dependency 'sinatra'
|
30
33
|
s.add_development_dependency 'actionpack'
|
31
|
-
|
34
|
+
|
32
35
|
s.add_development_dependency 'guard'
|
33
36
|
s.add_development_dependency 'guard-rspec'
|
34
37
|
s.add_development_dependency 'guard-rocco'
|
data/lib/fozzie.rb
CHANGED
@@ -36,11 +36,16 @@ module Fozzie
|
|
36
36
|
end
|
37
37
|
|
38
38
|
# Set a logger
|
39
|
+
#
|
40
|
+
#
|
41
|
+
# `Fozzie.logger = Logger.new(STDOUT)`
|
39
42
|
def logger=(logger)
|
40
43
|
@logger = logger
|
41
44
|
end
|
42
45
|
|
43
46
|
# Accessor for logger
|
47
|
+
#
|
48
|
+
# `Fozzie.logger.warn 'foo'`
|
44
49
|
def logger
|
45
50
|
@logger
|
46
51
|
end
|
data/lib/fozzie/socket.rb
CHANGED
data/lib/fozzie/version.rb
CHANGED
metadata
CHANGED
@@ -1,19 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fozzie
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.18
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Marc Watts
|
9
|
+
- Mark Barger
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date: 2012-
|
13
|
+
date: 2012-04-04 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: sys-uname
|
16
|
-
requirement: &
|
17
|
+
requirement: &70348897347620 !ruby/object:Gem::Requirement
|
17
18
|
none: false
|
18
19
|
requirements:
|
19
20
|
- - ! '>='
|
@@ -21,10 +22,10 @@ dependencies:
|
|
21
22
|
version: '0'
|
22
23
|
type: :runtime
|
23
24
|
prerelease: false
|
24
|
-
version_requirements: *
|
25
|
+
version_requirements: *70348897347620
|
25
26
|
- !ruby/object:Gem::Dependency
|
26
27
|
name: rake
|
27
|
-
requirement: &
|
28
|
+
requirement: &70348897347100 !ruby/object:Gem::Requirement
|
28
29
|
none: false
|
29
30
|
requirements:
|
30
31
|
- - ! '>='
|
@@ -32,10 +33,10 @@ dependencies:
|
|
32
33
|
version: '0'
|
33
34
|
type: :development
|
34
35
|
prerelease: false
|
35
|
-
version_requirements: *
|
36
|
+
version_requirements: *70348897347100
|
36
37
|
- !ruby/object:Gem::Dependency
|
37
38
|
name: rspec
|
38
|
-
requirement: &
|
39
|
+
requirement: &70348897346500 !ruby/object:Gem::Requirement
|
39
40
|
none: false
|
40
41
|
requirements:
|
41
42
|
- - ! '>='
|
@@ -43,10 +44,10 @@ dependencies:
|
|
43
44
|
version: '0'
|
44
45
|
type: :development
|
45
46
|
prerelease: false
|
46
|
-
version_requirements: *
|
47
|
+
version_requirements: *70348897346500
|
47
48
|
- !ruby/object:Gem::Dependency
|
48
49
|
name: mocha
|
49
|
-
requirement: &
|
50
|
+
requirement: &70348897345740 !ruby/object:Gem::Requirement
|
50
51
|
none: false
|
51
52
|
requirements:
|
52
53
|
- - ! '>='
|
@@ -54,10 +55,10 @@ dependencies:
|
|
54
55
|
version: '0'
|
55
56
|
type: :development
|
56
57
|
prerelease: false
|
57
|
-
version_requirements: *
|
58
|
+
version_requirements: *70348897345740
|
58
59
|
- !ruby/object:Gem::Dependency
|
59
60
|
name: syntax
|
60
|
-
requirement: &
|
61
|
+
requirement: &70348897344940 !ruby/object:Gem::Requirement
|
61
62
|
none: false
|
62
63
|
requirements:
|
63
64
|
- - ! '>='
|
@@ -65,10 +66,10 @@ dependencies:
|
|
65
66
|
version: '0'
|
66
67
|
type: :development
|
67
68
|
prerelease: false
|
68
|
-
version_requirements: *
|
69
|
+
version_requirements: *70348897344940
|
69
70
|
- !ruby/object:Gem::Dependency
|
70
71
|
name: rack-test
|
71
|
-
requirement: &
|
72
|
+
requirement: &70348897344260 !ruby/object:Gem::Requirement
|
72
73
|
none: false
|
73
74
|
requirements:
|
74
75
|
- - ! '>='
|
@@ -76,10 +77,10 @@ dependencies:
|
|
76
77
|
version: '0'
|
77
78
|
type: :development
|
78
79
|
prerelease: false
|
79
|
-
version_requirements: *
|
80
|
+
version_requirements: *70348897344260
|
80
81
|
- !ruby/object:Gem::Dependency
|
81
82
|
name: simplecov
|
82
|
-
requirement: &
|
83
|
+
requirement: &70348897343500 !ruby/object:Gem::Requirement
|
83
84
|
none: false
|
84
85
|
requirements:
|
85
86
|
- - ! '>='
|
@@ -87,10 +88,10 @@ dependencies:
|
|
87
88
|
version: '0'
|
88
89
|
type: :development
|
89
90
|
prerelease: false
|
90
|
-
version_requirements: *
|
91
|
+
version_requirements: *70348897343500
|
91
92
|
- !ruby/object:Gem::Dependency
|
92
93
|
name: sinatra
|
93
|
-
requirement: &
|
94
|
+
requirement: &70348897342980 !ruby/object:Gem::Requirement
|
94
95
|
none: false
|
95
96
|
requirements:
|
96
97
|
- - ! '>='
|
@@ -98,10 +99,10 @@ dependencies:
|
|
98
99
|
version: '0'
|
99
100
|
type: :development
|
100
101
|
prerelease: false
|
101
|
-
version_requirements: *
|
102
|
+
version_requirements: *70348897342980
|
102
103
|
- !ruby/object:Gem::Dependency
|
103
104
|
name: actionpack
|
104
|
-
requirement: &
|
105
|
+
requirement: &70348897342480 !ruby/object:Gem::Requirement
|
105
106
|
none: false
|
106
107
|
requirements:
|
107
108
|
- - ! '>='
|
@@ -109,10 +110,10 @@ dependencies:
|
|
109
110
|
version: '0'
|
110
111
|
type: :development
|
111
112
|
prerelease: false
|
112
|
-
version_requirements: *
|
113
|
+
version_requirements: *70348897342480
|
113
114
|
- !ruby/object:Gem::Dependency
|
114
115
|
name: guard
|
115
|
-
requirement: &
|
116
|
+
requirement: &70348897357340 !ruby/object:Gem::Requirement
|
116
117
|
none: false
|
117
118
|
requirements:
|
118
119
|
- - ! '>='
|
@@ -120,10 +121,10 @@ dependencies:
|
|
120
121
|
version: '0'
|
121
122
|
type: :development
|
122
123
|
prerelease: false
|
123
|
-
version_requirements: *
|
124
|
+
version_requirements: *70348897357340
|
124
125
|
- !ruby/object:Gem::Dependency
|
125
126
|
name: guard-rspec
|
126
|
-
requirement: &
|
127
|
+
requirement: &70348897350820 !ruby/object:Gem::Requirement
|
127
128
|
none: false
|
128
129
|
requirements:
|
129
130
|
- - ! '>='
|
@@ -131,10 +132,10 @@ dependencies:
|
|
131
132
|
version: '0'
|
132
133
|
type: :development
|
133
134
|
prerelease: false
|
134
|
-
version_requirements: *
|
135
|
+
version_requirements: *70348897350820
|
135
136
|
- !ruby/object:Gem::Dependency
|
136
137
|
name: guard-rocco
|
137
|
-
requirement: &
|
138
|
+
requirement: &70348897349720 !ruby/object:Gem::Requirement
|
138
139
|
none: false
|
139
140
|
requirements:
|
140
141
|
- - ! '>='
|
@@ -142,10 +143,10 @@ dependencies:
|
|
142
143
|
version: '0'
|
143
144
|
type: :development
|
144
145
|
prerelease: false
|
145
|
-
version_requirements: *
|
146
|
+
version_requirements: *70348897349720
|
146
147
|
- !ruby/object:Gem::Dependency
|
147
148
|
name: fl-rocco
|
148
|
-
requirement: &
|
149
|
+
requirement: &70348897385560 !ruby/object:Gem::Requirement
|
149
150
|
none: false
|
150
151
|
requirements:
|
151
152
|
- - ! '>='
|
@@ -153,11 +154,12 @@ dependencies:
|
|
153
154
|
version: '0'
|
154
155
|
type: :development
|
155
156
|
prerelease: false
|
156
|
-
version_requirements: *
|
157
|
-
description: Gem
|
158
|
-
|
157
|
+
version_requirements: *70348897385560
|
158
|
+
description: ! "\n Gem to make statistics sending to Statsd from Ruby applications
|
159
|
+
simple and efficient as possible.\n Inspired by the original ruby-statsd gem
|
160
|
+
by Etsy, currently used by Lonely Planet Online.\n "
|
159
161
|
email:
|
160
|
-
-
|
162
|
+
- marc.watts@lonelyplanet.co.uk
|
161
163
|
executables: []
|
162
164
|
extensions: []
|
163
165
|
extra_rdoc_files: []
|
@@ -209,7 +211,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
209
211
|
version: '0'
|
210
212
|
segments:
|
211
213
|
- 0
|
212
|
-
hash:
|
214
|
+
hash: -636781354410393457
|
213
215
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
214
216
|
none: false
|
215
217
|
requirements:
|
@@ -218,13 +220,13 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
218
220
|
version: '0'
|
219
221
|
segments:
|
220
222
|
- 0
|
221
|
-
hash:
|
223
|
+
hash: -636781354410393457
|
222
224
|
requirements: []
|
223
225
|
rubyforge_project: fozzie
|
224
226
|
rubygems_version: 1.8.10
|
225
227
|
signing_key:
|
226
228
|
specification_version: 3
|
227
|
-
summary: Statsd gem
|
229
|
+
summary: Statsd Ruby gem from Lonely Planet Online
|
228
230
|
test_files:
|
229
231
|
- spec/config/fozzie.yml
|
230
232
|
- spec/lib/core_ext/hash_spec.rb
|