opentelemetry-instrumentation-sinatra 0.13.0 → 0.18.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 88a768ba11a59a82591f8ae526721074e9946c847d67a784705aabe62e5e30f7
4
- data.tar.gz: db3cefa7e443d635e4dd2bee00375aa3805ea7b8e417904238ee985366230580
3
+ metadata.gz: 9e487da27ae850207f0eeb2f6c8a75b2c56411b55eb4034efb56dbef36525243
4
+ data.tar.gz: a6eb41a1d9722a6a8a1edd8d55966f54898a29b8a4a7c93c379cb5eba5720f1d
5
5
  SHA512:
6
- metadata.gz: d051da96921410dbe601468b561f537956b0dd16572741b56e2a4c3b1d93801304f9cf545aedb041f887ba518b1a3ebfdcb6dc5726788ee2cc43ada16e1a2b39
7
- data.tar.gz: bd2906376362fd0ece1e52a582e5590ad7dc12d9bae2e8f79869f282eebe1c656c617b0a2a871910417ec406e6e188ca95ff069381e7140502bb00e38e726eaf
6
+ metadata.gz: 21fa3604acd21cb0412a98afb4deabab82b7067e2b1e3a7b9fcd7377a434ce31b694ae5420662e707ed8ad697272361633e9bf88898e703a57c2703f4ac93b9a
7
+ data.tar.gz: d7a6be83743e6136d599c63156b0bc3c7e668971711fbcda75b9b18337110289f39ecd1f368d6b1957d7e9019b420c83a327e1088f21b23d6a7bd1fec3de8558
data/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # Release History: opentelemetry-instrumentation-sinatra
2
2
 
3
+ ### v0.18.0 / 2021-05-21
4
+
5
+ * ADDED: Updated API depedency for 1.0.0.rc1
6
+ * BREAKING CHANGE: Remove optional parent_context from in_span
7
+
8
+ * FIXED: Remove optional parent_context from in_span
9
+ * FIXED: Removed http.status_text attribute #750
10
+
11
+ ### v0.17.0 / 2021-04-22
12
+
13
+ * (No significant changes)
14
+
15
+ ### v0.16.0 / 2021-03-17
16
+
17
+ * FIXED: Example scripts now reference local common lib
18
+ * DOCS: Replace Gitter with GitHub Discussions
19
+
20
+ ### v0.15.0 / 2021-02-18
21
+
22
+ * (No significant changes)
23
+
24
+ ### v0.14.0 / 2021-02-03
25
+
26
+ * BREAKING CHANGE: Replace getter and setter callables and remove rack specific propagators
27
+
28
+ * ADDED: Replace getter and setter callables and remove rack specific propagators
29
+
3
30
  ### v0.13.0 / 2021-01-29
4
31
 
5
32
  * (No significant changes)
@@ -10,7 +37,7 @@
10
37
 
11
38
  ### v0.11.0 / 2020-12-11
12
39
 
13
- * FIXED: Copyright comments to not reference year
40
+ * FIXED: Copyright comments to not reference year
14
41
 
15
42
  ### v0.10.0 / 2020-12-03
16
43
 
@@ -18,24 +45,24 @@
18
45
 
19
46
  ### v0.9.0 / 2020-11-27
20
47
 
21
- * BREAKING CHANGE: Add timeout for force_flush and shutdown
48
+ * BREAKING CHANGE: Add timeout for force_flush and shutdown
22
49
 
23
- * ADDED: Add timeout for force_flush and shutdown
50
+ * ADDED: Add timeout for force_flush and shutdown
24
51
 
25
52
  ### v0.8.0 / 2020-10-27
26
53
 
27
- * BREAKING CHANGE: Remove 'canonical' from status codes
54
+ * BREAKING CHANGE: Remove 'canonical' from status codes
28
55
 
29
- * FIXED: Remove 'canonical' from status codes
56
+ * FIXED: Remove 'canonical' from status codes
30
57
 
31
58
  ### v0.7.1 / 2020-10-08
32
59
 
33
- * FIXED: Set span name to sinatra.route
60
+ * FIXED: Set span name to sinatra.route
34
61
 
35
62
  ### v0.7.0 / 2020-10-07
36
63
 
37
- * FIXED: Default to sinatra.route for span name
38
- * DOCS: Standardize toplevel docs structure and readme
64
+ * FIXED: Default to sinatra.route for span name
65
+ * DOCS: Standardize toplevel docs structure and readme
39
66
 
40
67
  ### v0.6.0 / 2020-09-10
41
68
 
data/README.md CHANGED
@@ -45,7 +45,7 @@ end
45
45
 
46
46
  The `opentelemetry-instrumentation-sinatra` gem source is [on github][repo-github], along with related gems including `opentelemetry-api` and `opentelemetry-sdk`.
47
47
 
48
- The OpenTelemetry Ruby gems are maintained by the OpenTelemetry-Ruby special interest group (SIG). You can get involved by joining us on our [gitter channel][ruby-gitter] or attending our weekly meeting. See the [meeting calendar][community-meetings] for dates and times. For more information on this and other language SIGs, see the OpenTelemetry [community page][ruby-sig].
48
+ The OpenTelemetry Ruby gems are maintained by the OpenTelemetry-Ruby special interest group (SIG). You can get involved by joining us in [GitHub Discussions][discussions-url] or attending our weekly meeting. See the [meeting calendar][community-meetings] for dates and times. For more information on this and other language SIGs, see the OpenTelemetry [community page][ruby-sig].
49
49
 
50
50
  ## License
51
51
 
@@ -57,4 +57,4 @@ The `opentelemetry-instrumentation-sinatra` gem is distributed under the Apache
57
57
  [license-github]: https://github.com/open-telemetry/opentelemetry-ruby/blob/main/LICENSE
58
58
  [ruby-sig]: https://github.com/open-telemetry/community#ruby-sig
59
59
  [community-meetings]: https://github.com/open-telemetry/community#community-meetings
60
- [ruby-gitter]: https://gitter.im/open-telemetry/opentelemetry-ruby
60
+ [discussions-url]: https://github.com/open-telemetry/opentelemetry-ruby/discussions
@@ -5,6 +5,7 @@
5
5
  # SPDX-License-Identifier: Apache-2.0
6
6
 
7
7
  require 'opentelemetry'
8
+ require 'opentelemetry-instrumentation-base'
8
9
 
9
10
  module OpenTelemetry
10
11
  module Instrumentation
@@ -15,25 +15,24 @@ module OpenTelemetry
15
15
  end
16
16
 
17
17
  def call(env)
18
- tracer.in_span(
19
- env['PATH_INFO'],
20
- attributes: { 'http.method' => env['REQUEST_METHOD'],
21
- 'http.url' => env['PATH_INFO'] },
22
- kind: :server,
23
- with_parent: parent_context(env)
24
- ) do |span|
25
- app.call(env).tap { |resp| trace_response(span, env, resp) }
18
+ extracted_context = OpenTelemetry.propagation.extract(
19
+ env,
20
+ getter: OpenTelemetry::Context::Propagation.rack_env_getter
21
+ )
22
+ OpenTelemetry::Context.with_current(extracted_context) do
23
+ tracer.in_span(
24
+ env['PATH_INFO'],
25
+ attributes: { 'http.method' => env['REQUEST_METHOD'],
26
+ 'http.url' => env['PATH_INFO'] },
27
+ kind: :server
28
+ ) do |span|
29
+ @app.call(env).tap { |resp| trace_response(span, env, resp) }
30
+ end
26
31
  end
27
32
  end
28
33
 
29
34
  private
30
35
 
31
- attr_reader :app
32
-
33
- def parent_context(env)
34
- OpenTelemetry.propagation.http.extract(env)
35
- end
36
-
37
36
  def tracer
38
37
  OpenTelemetry::Instrumentation::Sinatra::Instrumentation.instance.tracer
39
38
  end
@@ -42,7 +41,6 @@ module OpenTelemetry
42
41
  status, _headers, _response_body = resp
43
42
 
44
43
  span.set_attribute('http.status_code', status)
45
- span.set_attribute('http.status_text', ::Rack::Utils::HTTP_STATUS_CODES[status])
46
44
  span.set_attribute('http.route', env['sinatra.route'].split.last) if env['sinatra.route']
47
45
  span.name = env['sinatra.route'] if env['sinatra.route']
48
46
  span.status = OpenTelemetry::Trace::Status.http_to_status(status)
@@ -7,7 +7,7 @@
7
7
  module OpenTelemetry
8
8
  module Instrumentation
9
9
  module Sinatra
10
- VERSION = '0.13.0'
10
+ VERSION = '0.18.0'
11
11
  end
12
12
  end
13
13
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opentelemetry-instrumentation-sinatra
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenTelemetry Authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-30 00:00:00.000000000 Z
11
+ date: 2021-05-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -16,14 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.13.0
19
+ version: 1.0.0.rc1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.13.0
26
+ version: 1.0.0.rc1
27
+ - !ruby/object:Gem::Dependency
28
+ name: opentelemetry-instrumentation-base
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.18.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.18.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: appraisal
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -72,14 +86,14 @@ dependencies:
72
86
  requirements:
73
87
  - - "~>"
74
88
  - !ruby/object:Gem::Version
75
- version: '0.0'
89
+ version: 1.0.0.rc1
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
- version: '0.0'
96
+ version: 1.0.0.rc1
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: rack-test
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -200,10 +214,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
200
214
  licenses:
201
215
  - Apache-2.0
202
216
  metadata:
203
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-sinatra/v0.13.0/file.CHANGELOG.html
217
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-sinatra/v0.18.0/file.CHANGELOG.html
204
218
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/instrumentation/sinatra
205
219
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
206
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-sinatra/v0.13.0
220
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-sinatra/v0.18.0
207
221
  post_install_message:
208
222
  rdoc_options: []
209
223
  require_paths:
@@ -219,7 +233,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
219
233
  - !ruby/object:Gem::Version
220
234
  version: '0'
221
235
  requirements: []
222
- rubygems_version: 3.1.4
236
+ rubygems_version: 3.1.6
223
237
  signing_key:
224
238
  specification_version: 4
225
239
  summary: Sinatra instrumentation for the OpenTelemetry framework