honeycomb-beeline 1.0.0.pre.beta2 → 1.0.0.pre.beta3

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
  SHA256:
3
- metadata.gz: b6455d0acd6092c717f845bce1c18c8661b9921f54d48ec948ac119ca2d94457
4
- data.tar.gz: 6b44aa77a86270f5cb1387a4fc9bc1bb4cdb17cb6c747134b6e9aade96eddfa2
3
+ metadata.gz: 1b1b7ab0eda9a7af908e48d11f8b7d4e85daebc4a7aaf5495cc264c504d48b57
4
+ data.tar.gz: 1bb0266837751cfb7b1941f408a5a68908bce74d2ef3f2d6b12dbc05a23df5b6
5
5
  SHA512:
6
- metadata.gz: da4974ae6e23ddad9d013e385563f106bd37277cb52450a66587219e3d559e5e889bb61acea84a9c840d14138e3b5e3691517db2652d0278d3869f9bc061c12c
7
- data.tar.gz: 8cdce0a0c217dde18ef0d07712e4f81648b53ed3b170a33f7c3c564592403a45d3c4bb5885c78794e783b085741c6bc7595c5234662084d826a9bf1623cd3afa
6
+ metadata.gz: 51d702c4bed8913233e7480777e76667871bbbd928415e5061688245c8c87d235aed6e537300a87464a23fa5f7d3a636003ab5cd005f34e2654aac8925f3ddb2
7
+ data.tar.gz: acf01866b9c5d8051270ff2c1900dcb19e4cf6dda83a6aa92f461d5911deb40a43c7b8f3ebb9748eace39df226b2e98f5da96e1ee0815edce85ec421262683ba
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- honeycomb-beeline (1.0.0.pre.beta2)
4
+ honeycomb-beeline (1.0.0.pre.beta3)
5
5
  libhoney (~> 1.8)
6
6
 
7
7
  GEM
@@ -3,7 +3,7 @@
3
3
  module Honeycomb
4
4
  module Beeline
5
5
  NAME = "honeycomb-beeline".freeze
6
- VERSION = "1.0.0-beta2".freeze
6
+ VERSION = "1.0.0-beta3".freeze
7
7
  USER_AGENT_SUFFIX = "#{NAME}/#{VERSION}".freeze
8
8
  end
9
9
  end
@@ -16,11 +16,25 @@ module Honeycomb
16
16
  events = notification_events || []
17
17
  ActiveSupport::Subscriber.new(client: client).tap do |sub|
18
18
  events.each do |event|
19
- sub.subscribe(event) do |span, payload|
20
- payload.each do |key, value|
21
- span.add_field("#{event}.#{key}", value.to_s)
22
- end
23
- end
19
+ sub.subscribe(event, &method(:handle_notification_event))
20
+ end
21
+ end
22
+ end
23
+
24
+ def on_notification_event(&hook)
25
+ if block_given?
26
+ @on_notification_event = hook
27
+ else
28
+ @on_notification_event
29
+ end
30
+ end
31
+
32
+ def handle_notification_event(name, span, payload)
33
+ if on_notification_event
34
+ on_notification_event.call(name, span, payload)
35
+ else
36
+ payload.each do |key, value|
37
+ span.add_field("#{name}.#{key}", value.to_s)
24
38
  end
25
39
  end
26
40
  end
@@ -49,7 +63,7 @@ module Honeycomb
49
63
  def finish(name, id, payload)
50
64
  return unless (span = spans[id].pop)
51
65
 
52
- handlers[name].call(span, payload)
66
+ handlers[name].call(name, span, payload)
53
67
 
54
68
  span.send
55
69
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: honeycomb-beeline
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre.beta2
4
+ version: 1.0.0.pre.beta3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Holman
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-07-16 00:00:00.000000000 Z
11
+ date: 2019-07-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: libhoney