infludp 0.4.0 → 0.5.0

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: 2c0a1a81415d93f17cdd6c48bd073d50d6a29b28
4
- data.tar.gz: 37e549eb3926b274598b40d5d07b9f7316d30d22
3
+ metadata.gz: d3d7c12e910ce6b126a424c820ffb11405fe257f
4
+ data.tar.gz: d897c3b48c78cde46ca3f79d0d45705a408f3525
5
5
  SHA512:
6
- metadata.gz: 3d07b6ef0be5274843698e82446deb08a324e1e887188a70cdf7f2fa67536b349ebe88bfc133916dbd23c04c9a7c9eb55efbdb652e5b1e04cbf85fc5d8e60b5f
7
- data.tar.gz: 9d2826387d7dbfebba21479dac26c0d03fe8e5b51e43a29f3467132561b43e22bd8d1ea49c119267296f7f7eacc23f5047c7c83030cc6121f885b6ad79ec3cc4
6
+ metadata.gz: 494420b2b2eeeb3413c07eddd63627b8f9440e98873e42bb4b255af0e209126ed29b97dceb9f05e06b03a6d4c9937df17c536e9f0f56089cac2c96ac5fc0477d
7
+ data.tar.gz: 92e1d4a3f683c16c55616b02c2799d7d33de350e9dba1ba48e769569451ec3396ed821e577a37c37e236116ea54dc26613ed2d1cfdb9f28fbf5496a09d14147a
data/README.md CHANGED
@@ -17,10 +17,13 @@ $metrics = Infludp::Client.new(
17
17
  port: 4444
18
18
  )
19
19
 
20
- $metrics.send('cpu', {
20
+ $metrics.send('cpu',
21
+ {
21
22
  node: 'server1',
22
- value: 22,
23
- boot: true
23
+ os: 'ubuntu'
24
+ },
25
+ {
26
+ value: 22
24
27
  })
25
28
  ```
26
29
 
@@ -33,11 +36,11 @@ bundle exec rake test:all
33
36
 
34
37
  ```
35
38
  Rehearsal ---------------------------------------------------------------
36
- 1000 metrics: 0.030000 0.020000 0.050000 ( 0.046954)
37
- ------------------------------------------------------ total: 0.050000sec
39
+ 1000 metrics: 0.020000 0.000000 0.020000 ( 0.018585)
40
+ ------------------------------------------------------ total: 0.020000sec
38
41
 
39
42
  user system total real
40
- 1000 metrics: 0.030000 0.010000 0.040000 ( 0.045463)
43
+ 1000 metrics: 0.020000 0.000000 0.020000 ( 0.019719)
41
44
  ```
42
45
 
43
46
  ## Contributing.
@@ -21,4 +21,5 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.add_development_dependency "bundler", "~> 1.9"
23
23
  spec.add_development_dependency "rake", "~> 10.0"
24
+ spec.add_development_dependency "minitest", "~> 5.8"
24
25
  end
@@ -11,25 +11,27 @@ module Infludp
11
11
  Thread.current[:infludp_socket] ||= UDPSocket.new
12
12
  end
13
13
 
14
- def send(name, data)
14
+ def send(name, tags, fields)
15
15
  socket.send(
16
- build_metric(name, data),
16
+ build_metric(name, tags, fields),
17
17
  0,
18
18
  host,
19
19
  port
20
20
  )
21
21
  end
22
22
 
23
- def build_metric(name, data)
24
- values = data.map do |key, value|
23
+ def build_metric(name, tags, fields)
24
+ "#{name},#{to_line(tags)} #{to_line(fields)}"
25
+ end
26
+
27
+ def to_line(hash)
28
+ hash.map do |key, value|
25
29
  if value.is_a?(String)
26
30
  "#{key}=\"#{value}\""
27
31
  else
28
32
  "#{key}=#{value}"
29
33
  end
30
- end
31
-
32
- "#{name} #{values.join(',')}"
34
+ end.join(',')
33
35
  end
34
36
  end
35
37
  end
@@ -1,3 +1,3 @@
1
1
  module Infludp
2
- VERSION = "0.4.0"
2
+ VERSION = "0.5.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: infludp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marco Lisci
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-12-16 00:00:00.000000000 Z
11
+ date: 2016-01-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: minitest
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '5.8'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '5.8'
41
55
  description: A minimal, zero dependencies, thread-safe Ruby gem to send metrics via
42
56
  UDP to InfluxDB.
43
57
  email:
@@ -75,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
89
  version: '0'
76
90
  requirements: []
77
91
  rubyforge_project:
78
- rubygems_version: 2.4.5.1
92
+ rubygems_version: 2.5.1
79
93
  signing_key:
80
94
  specification_version: 4
81
95
  summary: A minimal, zero dependencies, thread-safe Ruby gem to send metrics via UDP