opentelemetry-instrumentation-rack 0.17.0 → 0.19.2

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: 7fe65a307ae87d65fca76bc0680ff2c4cfdfa18d801cfa086a5a2fc4604e8d84
4
- data.tar.gz: f76e07a68383ae21f66481e5a1cfc87861d880c4223b449295230c022958e3e4
3
+ metadata.gz: 5c6175977534f42097eb67c83e184461fa44c182c690e6fd46ea8f23ff4fc6d9
4
+ data.tar.gz: 19cf2b0f2b08991a89db05cbac22e4ec8d3fef3edf3bed5ad38114b44474cec1
5
5
  SHA512:
6
- metadata.gz: a0346fad3e253c31dd7accb5d5c50f5eb5c4bf1d2094085f8027d4c26e4193d54ed07c3c9ea642a16d614206f0909c5fbb016f4603049f6b8ccd4fc76734b4cb
7
- data.tar.gz: 32cc47e8801ead256d770ccf485cc46348c576afd38c5b21342a09615de5796ff647edfb0da3dfa6e1e0356f8605eb563c1dbb7710cc7e78d6136434e1e458e7
6
+ metadata.gz: e41963b58465236e5009dc35fe371e189188c19ba6df8c5488cee4fa71e6b3b22502501d6eec8c5076a3102a873a6b92e519fadc61ca2875970a100d1ce8fb47
7
+ data.tar.gz: ac146569b28ac00876f327814ab1df1e5589be006242b8cd9d53a958db44dd9679dc7cda96af90011af4d67f83190853472b7c71651090a147837fa89bd45eae
data/CHANGELOG.md CHANGED
@@ -1,32 +1,52 @@
1
1
  # Release History: opentelemetry-instrumentation-rack
2
2
 
3
+ ### v0.19.2 / 2021-08-18
4
+
5
+ * FIXED: Rack middleware assuming script_name presence
6
+
7
+ ### v0.19.1 / 2021-08-12
8
+
9
+ * DOCS: Update docs to rely more on environment variable configuration
10
+
11
+ ### v0.19.0 / 2021-06-23
12
+
13
+ * BREAKING CHANGE: Total order constraint on span.status=
14
+
15
+ * ADDED: Add Tracer.non_recording_span to API
16
+ * FIXED: Total order constraint on span.status=
17
+
18
+ ### v0.18.0 / 2021-05-21
19
+
20
+ * ADDED: Updated API depedency for 1.0.0.rc1
21
+ * FIXED: Removed http.status_text attribute #750
22
+
3
23
  ### v0.17.0 / 2021-04-22
4
24
 
5
25
  * (No significant changes)
6
26
 
7
27
  ### v0.16.0 / 2021-03-17
8
28
 
9
- * BREAKING CHANGE: Pass env to url quantization rack config to allow more flexibility
29
+ * BREAKING CHANGE: Pass env to url quantization rack config to allow more flexibility
10
30
 
11
- * ADDED: Pass env to url quantization rack config to allow more flexibility
12
- * ADDED: Add rack instrumentation config option to accept callable to filter requests to trace
13
- * FIXED: Example scripts now reference local common lib
14
- * DOCS: Replace Gitter with GitHub Discussions
31
+ * ADDED: Pass env to url quantization rack config to allow more flexibility
32
+ * ADDED: Add rack instrumentation config option to accept callable to filter requests to trace
33
+ * FIXED: Example scripts now reference local common lib
34
+ * DOCS: Replace Gitter with GitHub Discussions
15
35
 
16
36
  ### v0.15.0 / 2021-02-18
17
37
 
18
- * ADDED: Add instrumentation config validation
38
+ * ADDED: Add instrumentation config validation
19
39
 
20
40
  ### v0.14.0 / 2021-02-03
21
41
 
22
- * BREAKING CHANGE: Replace getter and setter callables and remove rack specific propagators
42
+ * BREAKING CHANGE: Replace getter and setter callables and remove rack specific propagators
23
43
 
24
- * ADDED: Replace getter and setter callables and remove rack specific propagators
25
- * ADDED: Add untraced endpoints config to rack middleware
44
+ * ADDED: Replace getter and setter callables and remove rack specific propagators
45
+ * ADDED: Add untraced endpoints config to rack middleware
26
46
 
27
47
  ### v0.13.0 / 2021-01-29
28
48
 
29
- * FIXED: Only include user agent when present
49
+ * FIXED: Only include user agent when present
30
50
 
31
51
  ### v0.12.0 / 2020-12-24
32
52
 
@@ -34,11 +54,11 @@
34
54
 
35
55
  ### v0.11.0 / 2020-12-11
36
56
 
37
- * FIXED: Copyright comments to not reference year
57
+ * FIXED: Copyright comments to not reference year
38
58
 
39
59
  ### v0.10.1 / 2020-12-09
40
60
 
41
- * FIXED: Rack current_span
61
+ * FIXED: Rack current_span
42
62
 
43
63
  ### v0.10.0 / 2020-12-03
44
64
 
@@ -46,24 +66,24 @@
46
66
 
47
67
  ### v0.9.0 / 2020-11-27
48
68
 
49
- * BREAKING CHANGE: Add timeout for force_flush and shutdown
69
+ * BREAKING CHANGE: Add timeout for force_flush and shutdown
50
70
 
51
- * ADDED: Instrument rails
52
- * ADDED: Add timeout for force_flush and shutdown
71
+ * ADDED: Instrument rails
72
+ * ADDED: Add timeout for force_flush and shutdown
53
73
 
54
74
  ### v0.8.0 / 2020-10-27
55
75
 
56
- * BREAKING CHANGE: Move context/span methods to Trace module
57
- * BREAKING CHANGE: Remove 'canonical' from status codes
76
+ * BREAKING CHANGE: Move context/span methods to Trace module
77
+ * BREAKING CHANGE: Remove 'canonical' from status codes
58
78
 
59
- * FIXED: Move context/span methods to Trace module
60
- * FIXED: Remove 'canonical' from status codes
79
+ * FIXED: Move context/span methods to Trace module
80
+ * FIXED: Remove 'canonical' from status codes
61
81
 
62
82
  ### v0.7.0 / 2020-10-07
63
83
 
64
- * FIXED: Remove superfluous file from Rack gem
65
- * DOCS: Added README for Rack Instrumentation
66
- * DOCS: Standardize toplevel docs structure and readme
84
+ * FIXED: Remove superfluous file from Rack gem
85
+ * DOCS: Added README for Rack Instrumentation
86
+ * DOCS: Standardize toplevel docs structure and readme
67
87
 
68
88
  ### v0.6.0 / 2020-09-10
69
89
 
@@ -121,18 +121,11 @@ module OpenTelemetry
121
121
  'http.method' => env['REQUEST_METHOD'],
122
122
  'http.host' => env['HTTP_HOST'] || 'unknown',
123
123
  'http.scheme' => env['rack.url_scheme'],
124
- 'http.target' => fullpath(env)
124
+ 'http.target' => env['QUERY_STRING'].empty? ? env['PATH_INFO'] : "#{env['PATH_INFO']}?#{env['QUERY_STRING']}"
125
125
  }
126
- attributes['http.user_agent'] = env['HTTP_USER_AGENT'] if env['HTTP_USER_AGENT']
127
- attributes.merge(allowed_request_headers(env))
128
- end
129
126
 
130
- # e.g., "/webshop/articles/4?s=1":
131
- def fullpath(env)
132
- query_string = env['QUERY_STRING']
133
- path = env['SCRIPT_NAME'] + env['PATH_INFO']
134
-
135
- query_string.empty? ? path : "#{path}?#{query_string}"
127
+ attributes['http.user_agent'] = env['HTTP_USER_AGENT'] if env['HTTP_USER_AGENT']
128
+ attributes.merge!(allowed_request_headers(env))
136
129
  end
137
130
 
138
131
  # https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/data-http.md#name
@@ -153,13 +146,12 @@ module OpenTelemetry
153
146
  end
154
147
 
155
148
  def set_attributes_after_request(span, status, headers, _response)
156
- span.status = OpenTelemetry::Trace::Status.http_to_status(status)
149
+ span.status = OpenTelemetry::Trace::Status.error unless (100..399).include?(status.to_i)
157
150
  span.set_attribute('http.status_code', status)
158
151
 
159
152
  # NOTE: if data is available, it would be good to do this:
160
153
  # set_attribute('http.route', ...
161
154
  # e.g., "/users/:userID?
162
- span.set_attribute('http.status_text', ::Rack::Utils::HTTP_STATUS_CODES[status])
163
155
 
164
156
  allowed_response_headers(headers).each { |k, v| span.set_attribute(k, v) }
165
157
  end
@@ -7,7 +7,7 @@
7
7
  module OpenTelemetry
8
8
  module Instrumentation
9
9
  module Rack
10
- VERSION = '0.17.0'
10
+ VERSION = '0.19.2'
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-rack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.19.2
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-04-23 00:00:00.000000000 Z
11
+ date: 2021-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.17.0
19
+ version: 1.0.0.rc3
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.17.0
26
+ version: 1.0.0.rc3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: opentelemetry-instrumentation-base
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 0.17.0
33
+ version: 0.18.2
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 0.17.0
40
+ version: 0.18.2
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: appraisal
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0.0'
89
+ version: 1.0.0.rc1
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0.0'
96
+ version: 1.0.0.rc1
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rack
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -228,10 +228,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
228
228
  licenses:
229
229
  - Apache-2.0
230
230
  metadata:
231
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-rack/v0.17.0/file.CHANGELOG.html
231
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-rack/v0.19.2/file.CHANGELOG.html
232
232
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/instrumentation/rack
233
233
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
234
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-rack/v0.17.0
234
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-rack/v0.19.2
235
235
  post_install_message:
236
236
  rdoc_options: []
237
237
  require_paths: