measures 1.0.0 → 2.0.0
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.
- checksums.yaml +4 -4
- data/README.md +4 -1
- data/lib/measures.rb +2 -0
- data/lib/measures/client.rb +3 -5
- data/lib/measures/transport/http.rb +28 -0
- data/lib/measures/transport/udp.rb +16 -0
- data/lib/measures/version.rb +1 -1
- data/measures.gemspec +4 -0
- metadata +46 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fb39435f2dc43dab2b8ed85647f464077e5df90e
|
4
|
+
data.tar.gz: c91af23e4c666b86a9a5dc0df7e16b6abc5223a8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 26ba1b0f7d91602a51a5ea372a69abe97a6d3cdf84e666f2280fb85b902db39f94eb8ecc3775c495e5a9653a8f6e1c8b5fde937e0055f0f4e682edeeb2f80616
|
7
|
+
data.tar.gz: 2f8718cdbd1f9496161148eaab0a6195e14103ec1369e5865995bbdb1c5882479282bec7fc01bdda95edd73a200d221bc2720d1363a72a4f0a4f43804b83d999
|
data/README.md
CHANGED
@@ -25,8 +25,11 @@ $ gem install measures
|
|
25
25
|
```ruby
|
26
26
|
require "measures"
|
27
27
|
|
28
|
+
# Creates the transport form (UDP/HTTP/...)
|
29
|
+
transport = Measures::Transport::UDP.new("logstash.foo.bar", 30)
|
30
|
+
|
28
31
|
# Creates the measure client instance
|
29
|
-
measures = Measures::Client.new("my-app"
|
32
|
+
measures = Measures::Client.new(transport, "my-app")
|
30
33
|
|
31
34
|
# Sends count metric
|
32
35
|
measures.count("my_count_metric")
|
data/lib/measures.rb
CHANGED
data/lib/measures/client.rb
CHANGED
@@ -1,13 +1,11 @@
|
|
1
|
-
require "socket"
|
2
1
|
require "json"
|
3
2
|
require "benchmark"
|
4
3
|
|
5
4
|
module Measures
|
6
5
|
class Client
|
7
|
-
def initialize(
|
6
|
+
def initialize(transport, client)
|
8
7
|
@client = client
|
9
|
-
@
|
10
|
-
@socket.connect(host, port)
|
8
|
+
@transport = transport
|
11
9
|
end
|
12
10
|
|
13
11
|
def count(metric, data = {})
|
@@ -36,7 +34,7 @@ module Measures
|
|
36
34
|
|
37
35
|
default.merge!(data)
|
38
36
|
|
39
|
-
@
|
37
|
+
@transport.send(default.to_json)
|
40
38
|
end
|
41
39
|
end
|
42
40
|
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require "faraday"
|
2
|
+
require "faraday_middleware"
|
3
|
+
require "uri"
|
4
|
+
|
5
|
+
module Measures
|
6
|
+
module Transport
|
7
|
+
class HTTP
|
8
|
+
def initialize(host, port)
|
9
|
+
@host = host
|
10
|
+
@port = port
|
11
|
+
end
|
12
|
+
|
13
|
+
def send(data)
|
14
|
+
client = Faraday.new(url: URI::HTTP.build(host: @host, port: @port)) do |c|
|
15
|
+
c.request :json
|
16
|
+
|
17
|
+
c.adapter Faraday.default_adapter
|
18
|
+
end
|
19
|
+
|
20
|
+
client.post do |req|
|
21
|
+
req.url "/"
|
22
|
+
req.headers["Content-Type"] = "application/json"
|
23
|
+
req.body = data
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/measures/version.rb
CHANGED
data/measures.gemspec
CHANGED
@@ -15,9 +15,13 @@ Gem::Specification.new do |spec|
|
|
15
15
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
16
16
|
spec.require_paths = ["lib"]
|
17
17
|
|
18
|
+
spec.add_dependency "faraday"
|
19
|
+
spec.add_dependency "faraday_middleware"
|
20
|
+
|
18
21
|
spec.add_development_dependency "bundler", "~> 1.11"
|
19
22
|
spec.add_development_dependency "rake", "~> 10.0"
|
20
23
|
spec.add_development_dependency "rspec"
|
21
24
|
spec.add_development_dependency "guard"
|
22
25
|
spec.add_development_dependency "guard-rspec"
|
26
|
+
spec.add_development_dependency "webmock"
|
23
27
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: measures
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marcelo Boeira
|
@@ -9,8 +9,36 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-04-
|
12
|
+
date: 2016-04-12 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: faraday
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - ">="
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '0'
|
21
|
+
type: :runtime
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - ">="
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '0'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: faraday_middleware
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - ">="
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '0'
|
35
|
+
type: :runtime
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '0'
|
14
42
|
- !ruby/object:Gem::Dependency
|
15
43
|
name: bundler
|
16
44
|
requirement: !ruby/object:Gem::Requirement
|
@@ -81,6 +109,20 @@ dependencies:
|
|
81
109
|
- - ">="
|
82
110
|
- !ruby/object:Gem::Version
|
83
111
|
version: '0'
|
112
|
+
- !ruby/object:Gem::Dependency
|
113
|
+
name: webmock
|
114
|
+
requirement: !ruby/object:Gem::Requirement
|
115
|
+
requirements:
|
116
|
+
- - ">="
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: '0'
|
119
|
+
type: :development
|
120
|
+
prerelease: false
|
121
|
+
version_requirements: !ruby/object:Gem::Requirement
|
122
|
+
requirements:
|
123
|
+
- - ">="
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
84
126
|
description: Measures ruby client
|
85
127
|
email:
|
86
128
|
- me@marceloboeira.com
|
@@ -100,6 +142,8 @@ files:
|
|
100
142
|
- bin/setup
|
101
143
|
- lib/measures.rb
|
102
144
|
- lib/measures/client.rb
|
145
|
+
- lib/measures/transport/http.rb
|
146
|
+
- lib/measures/transport/udp.rb
|
103
147
|
- lib/measures/version.rb
|
104
148
|
- measures.gemspec
|
105
149
|
homepage: ''
|