woody.rb 0.1.8 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/woody/statsd.rb +40 -0
- data/lib/woody/version.rb +1 -1
- data/lib/woody.rb +1 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5f65940b0de493e1a5ed74cff33812d1767103c1
|
4
|
+
data.tar.gz: b1c44cfeffb95c3b2fcd8fd8437b7d80a7dcfa9c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b552cf2fa959bfe0c2626a82198cf4c4c575586164edac3ab7c6244931d47953a040c25d6e3b6efa6aa96ebf71d0cef92df417c056772904fe6bee365f07ba63
|
7
|
+
data.tar.gz: ca89087b4d6883b6809a9c20578d93c80c3cb58b83eebd9b74395d077acf51ff4e0d127f7dd0b979c6b5f6f0d9f3fbb89b04abe1b948ad8b043e1825064319f4
|
data/lib/woody/statsd.rb
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
require 'socket'
|
2
|
+
|
3
|
+
module Woody
|
4
|
+
class Statsd
|
5
|
+
def initialize(host, port, namespace)
|
6
|
+
@host = host
|
7
|
+
@port = port
|
8
|
+
@socket = UDPSocket.new
|
9
|
+
@ns = namespace
|
10
|
+
end
|
11
|
+
|
12
|
+
def increment(stat, inc = 1)
|
13
|
+
send_to_socket counter_stat(stat, inc)
|
14
|
+
end
|
15
|
+
|
16
|
+
def timing(stat, time_took)
|
17
|
+
send_to_socket timing_stat(stat, time_took)
|
18
|
+
end
|
19
|
+
|
20
|
+
def with_timing(stat)
|
21
|
+
start = Time.now.to_f
|
22
|
+
res = yield
|
23
|
+
time_took = Time.now.to_f - start
|
24
|
+
timing(stat, time_took)
|
25
|
+
res
|
26
|
+
end
|
27
|
+
|
28
|
+
def counter_stat(stat, inc)
|
29
|
+
"#{@ns}.#{stat}:#{inc}|c\n"
|
30
|
+
end
|
31
|
+
|
32
|
+
def timing_stat(stat, time_took)
|
33
|
+
"#{@ns}.#{stat}:#{time_took.round}|ms\n"
|
34
|
+
end
|
35
|
+
|
36
|
+
def send_to_socket(msg)
|
37
|
+
@socket.send msg, 0, @host, @port
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
data/lib/woody/version.rb
CHANGED
data/lib/woody.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: woody.rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chen Fisher
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-06-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -56,6 +56,7 @@ files:
|
|
56
56
|
- lib/woody.rb
|
57
57
|
- lib/woody/influx.rb
|
58
58
|
- lib/woody/logger.rb
|
59
|
+
- lib/woody/statsd.rb
|
59
60
|
- lib/woody/version.rb
|
60
61
|
- woody.gemspec
|
61
62
|
homepage: http://nanit.com
|