fozzie 0.0.17 → 0.0.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|