libhoney 1.4.1 → 1.5.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 +2 -0
- data/Rakefile +3 -0
- data/lib/libhoney/client.rb +9 -5
- data/lib/libhoney/transmission.rb +12 -2
- data/lib/libhoney/version.rb +1 -1
- data/libhoney.gemspec +1 -0
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 29ad40e8dcbca0f6fecd415db07673c112775cf9c8e5c57c4c8d483110bab179
|
4
|
+
data.tar.gz: e2d40016c340a2220d83ae5f7de8971b637153d2dd5b1b687cd656adb19651e7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ed70a0475fb88e90441f4e3626c12705f3f5a9cf8252f8046b0f2be3acac8806349311af87f43f423f7a41e60af4f14e1c662b0d8654f5c74adade31baca3a4
|
7
|
+
data.tar.gz: 86ee5a883863ec5ca594df1e3057c83bba3416340f979e54df5ccbeb98f978862ca00408cc16a5352b8a9394206ed260a5f66546fe5e7345a3cf149b29fc0fe5
|
data/README.md
CHANGED
@@ -57,6 +57,8 @@ honeycomb.send_now({
|
|
57
57
|
honeycomb.close
|
58
58
|
```
|
59
59
|
|
60
|
+
Check out the documentation for [`Libhoney::Client`](http://www.rubydoc.info/gems/libhoney/Libhoney/Client) for more detailed API documentation.
|
61
|
+
|
60
62
|
You can find a more complete example demonstrating usage in [`example/fact.rb`](example/fact.rb)
|
61
63
|
|
62
64
|
## Testing instrumented code
|
data/Rakefile
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
|
+
require 'yard'
|
2
3
|
|
3
4
|
require "rake/testtask"
|
4
5
|
Rake::TestTask.new(:test) do |t|
|
@@ -7,6 +8,8 @@ Rake::TestTask.new(:test) do |t|
|
|
7
8
|
t.test_files = FileList['test/**/*_test.rb']
|
8
9
|
end
|
9
10
|
|
11
|
+
YARD::Rake::YardocTask.new(:doc)
|
12
|
+
|
10
13
|
require "yardstick/rake/measurement"
|
11
14
|
Yardstick::Rake::Measurement.new do |measurement|
|
12
15
|
measurement.output = "measurement/report.txt"
|
data/lib/libhoney/client.rb
CHANGED
@@ -60,6 +60,7 @@ module Libhoney
|
|
60
60
|
dataset: '',
|
61
61
|
sample_rate: 1,
|
62
62
|
api_host: 'https://api.honeycomb.io/',
|
63
|
+
user_agent_addition: nil,
|
63
64
|
transmission: nil,
|
64
65
|
block_on_send: false,
|
65
66
|
block_on_responses: false,
|
@@ -78,6 +79,8 @@ module Libhoney
|
|
78
79
|
@builder.sample_rate = sample_rate
|
79
80
|
@builder.api_host = api_host
|
80
81
|
|
82
|
+
@user_agent_addition = user_agent_addition
|
83
|
+
|
81
84
|
@block_on_send = block_on_send
|
82
85
|
@block_on_responses = block_on_responses
|
83
86
|
@max_batch_size = max_batch_size
|
@@ -145,7 +148,7 @@ module Libhoney
|
|
145
148
|
# @param fn [#call] function that will be called to generate the value whenever an event is created.
|
146
149
|
# @return [self] this libhoney instance.
|
147
150
|
# @example
|
148
|
-
# honey.
|
151
|
+
# honey.add_dynamic_field("active_threads", Proc.new { Thread.list.select {|thread| thread.status == "run"}.count })
|
149
152
|
def add_dynamic_field(name, fn)
|
150
153
|
@builder.add_dynamic_field(name, fn)
|
151
154
|
self
|
@@ -155,10 +158,10 @@ module Libhoney
|
|
155
158
|
#
|
156
159
|
# @param data [Hash<String=>any>] optional field->value mapping to add to the event sent.
|
157
160
|
# @return [self] this libhoney instance.
|
158
|
-
# @example empty
|
159
|
-
# honey.
|
161
|
+
# @example empty send_now
|
162
|
+
# honey.send_now() # sends just the data that has been added via add/add_field/add_dynamic_field.
|
160
163
|
# @example adding data at send-time
|
161
|
-
# honey.
|
164
|
+
# honey.send_now {
|
162
165
|
# additionalField: value
|
163
166
|
# }
|
164
167
|
#/
|
@@ -183,7 +186,8 @@ module Libhoney
|
|
183
186
|
:pending_work_capacity => @pending_work_capacity,
|
184
187
|
:responses => @responses,
|
185
188
|
:block_on_send => @block_on_send,
|
186
|
-
:block_on_responses => @block_on_responses
|
189
|
+
:block_on_responses => @block_on_responses,
|
190
|
+
:user_agent_addition => @user_agent_addition)
|
187
191
|
end
|
188
192
|
}
|
189
193
|
|
@@ -9,7 +9,8 @@ module Libhoney
|
|
9
9
|
pending_work_capacity: 0,
|
10
10
|
responses: 0,
|
11
11
|
block_on_send: 0,
|
12
|
-
block_on_responses: 0
|
12
|
+
block_on_responses: 0,
|
13
|
+
user_agent_addition: nil)
|
13
14
|
|
14
15
|
@responses = responses
|
15
16
|
@block_on_send = block_on_send
|
@@ -19,6 +20,8 @@ module Libhoney
|
|
19
20
|
@max_concurrent_batches = max_concurrent_batches
|
20
21
|
@pending_work_capacity = pending_work_capacity
|
21
22
|
|
23
|
+
@user_agent = build_user_agent(user_agent_addition).freeze
|
24
|
+
|
22
25
|
# use a SizedQueue so the producer will block on adding to the send_queue when @block_on_send is true
|
23
26
|
@send_queue = SizedQueue.new(@pending_work_capacity)
|
24
27
|
@threads = []
|
@@ -54,7 +57,7 @@ module Libhoney
|
|
54
57
|
|
55
58
|
begin
|
56
59
|
resp = HTTP.headers(
|
57
|
-
'User-Agent' =>
|
60
|
+
'User-Agent' => @user_agent,
|
58
61
|
'Content-Type' => 'application/json',
|
59
62
|
'X-Honeycomb-Team' => e.writekey,
|
60
63
|
'X-Honeycomb-SampleRate' => e.sample_rate,
|
@@ -97,5 +100,12 @@ module Libhoney
|
|
97
100
|
|
98
101
|
0
|
99
102
|
end
|
103
|
+
|
104
|
+
private
|
105
|
+
def build_user_agent(user_agent_addition)
|
106
|
+
ua = "libhoney-rb/#{VERSION}"
|
107
|
+
ua << " #{user_agent_addition}" if user_agent_addition
|
108
|
+
ua
|
109
|
+
end
|
100
110
|
end
|
101
111
|
end
|
data/lib/libhoney/version.rb
CHANGED
data/libhoney.gemspec
CHANGED
@@ -27,6 +27,7 @@ Gem::Specification.new do |spec|
|
|
27
27
|
spec.add_development_dependency "rake", "~> 10.0"
|
28
28
|
spec.add_development_dependency "webmock", "~> 2.1"
|
29
29
|
spec.add_development_dependency "minitest", "~> 5.0"
|
30
|
+
spec.add_development_dependency "yard"
|
30
31
|
spec.add_development_dependency "yardstick", "~> 0.9"
|
31
32
|
spec.add_development_dependency "bump", "~> 0.5"
|
32
33
|
spec.add_dependency "http", "~> 2.0"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: libhoney
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- The Honeycomb.io Team
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-04-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -66,6 +66,20 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '5.0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: yard
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: yardstick
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -152,7 +166,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
152
166
|
version: '0'
|
153
167
|
requirements: []
|
154
168
|
rubyforge_project:
|
155
|
-
rubygems_version: 2.7.
|
169
|
+
rubygems_version: 2.7.6
|
156
170
|
signing_key:
|
157
171
|
specification_version: 4
|
158
172
|
summary: send data to Honeycomb
|