ddtrace 0.17.1 → 0.17.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0243b521350de03538134c3513aedc7a0c23b8e8
4
- data.tar.gz: addea843c61b11542c59d6577993c9a3d1dab233
2
+ SHA256:
3
+ metadata.gz: 6b98c7693f06abe337bbc38c713ea7115a3964e584d8508670b65d43811235aa
4
+ data.tar.gz: 147c7f9e7225927b9bc7f6dd8c4aff8134d2eb2a28f7aab063ad3ba369139217
5
5
  SHA512:
6
- metadata.gz: 755acb13506d77ecf0edc29d5fb9bc28c929251bdfbbf06a90fc54c80a9aec34285a0fa4799efa580a36d10b8aabbc2d577b3262d899d350fcb2f1370d060f63
7
- data.tar.gz: 46d9d93281db786b614b41d0eab804655dea4770d2d555895914097ce20d4efb6af00af4c174c3fc7f080c66b4286dc9e2444d235b45ac57c8a720c075d6eb9b
6
+ metadata.gz: 310e51596c88f0bdccaef1851dace5302fe93fb11ccd0bb8eaddbdeb817e775ac9267ebb10cee73fe34b4a7686742201a7105da4c8313b9714724e3ad6fec67b
7
+ data.tar.gz: 335c7994b68a6b498add3f6bc9cc7dd64840f14337fa7c304264fda84aa74c78e0b45b2cb6f34f75550c38d887f23913df39a9ee047741216d207d7ef9ff2e1c
@@ -4,6 +4,16 @@
4
4
 
5
5
  ## [Unreleased (beta)]
6
6
 
7
+ ## [0.17.2] - 2018-11-23
8
+
9
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.17.2
10
+
11
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.17.1...v0.17.2
12
+
13
+ ### Fixed
14
+
15
+ - Resque integration shutting down tracer when forking is disabled (#637)
16
+
7
17
  ## [0.17.1] - 2018-11-07
8
18
 
9
19
  Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.17.1
@@ -8,7 +8,7 @@ module Datadog
8
8
  module Resque
9
9
  # Uses Resque job hooks to create traces
10
10
  module ResqueJob
11
- def around_perform(*args)
11
+ def around_perform(*_)
12
12
  pin = Pin.get_from(::Resque)
13
13
  return yield unless pin && pin.tracer
14
14
  pin.tracer.trace(Ext::SPAN_JOB, service: pin.service) do |span|
@@ -17,8 +17,19 @@ module Datadog
17
17
  yield
18
18
  span.service = pin.service
19
19
  end
20
- ensure
21
- pin.tracer.shutdown! if pin && pin.tracer
20
+ end
21
+
22
+ def after_perform_shutdown_tracer(*_)
23
+ shutdown_tracer_when_forked!
24
+ end
25
+
26
+ def on_failure_shutdown_tracer(*_)
27
+ shutdown_tracer_when_forked!
28
+ end
29
+
30
+ def shutdown_tracer_when_forked!
31
+ pin = Datadog::Pin.get_from(Resque)
32
+ pin.tracer.shutdown! if pin && pin.tracer && pin.config && pin.config[:forked]
22
33
  end
23
34
  end
24
35
  end
@@ -29,6 +40,9 @@ Resque.after_fork do
29
40
  # get the current tracer
30
41
  pin = Datadog::Pin.get_from(Resque)
31
42
  next unless pin && pin.tracer
43
+ pin.config ||= {}
44
+ pin.config[:forked] = true
45
+
32
46
  # clean the state so no CoW happens
33
47
  pin.tracer.provider.context = nil
34
48
  end
@@ -2,7 +2,7 @@ module Datadog
2
2
  module VERSION
3
3
  MAJOR = 0
4
4
  MINOR = 17
5
- PATCH = 1
5
+ PATCH = 2
6
6
  PRE = nil
7
7
 
8
8
  STRING = [MAJOR, MINOR, PATCH, PRE].compact.join('.')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ddtrace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.1
4
+ version: 0.17.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Datadog, Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-08 00:00:00.000000000 Z
11
+ date: 2018-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: msgpack
@@ -544,7 +544,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
544
544
  version: '0'
545
545
  requirements: []
546
546
  rubyforge_project:
547
- rubygems_version: 2.6.14
547
+ rubygems_version: 2.7.7
548
548
  signing_key:
549
549
  specification_version: 4
550
550
  summary: Datadog tracing code for your Ruby applications