opentelemetry-instrumentation-rspec 0.1.0 → 0.2.1
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/CHANGELOG.md +11 -0
- data/README.md +2 -2
- data/lib/opentelemetry/instrumentation/rspec/formatter.rb +31 -4
- data/lib/opentelemetry/instrumentation/rspec/version.rb +1 -1
- metadata +46 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f0f74d3b0dd42bd111a5c0794a3e9f206292e5b674ba1dd0e01c412ced4edd96
|
4
|
+
data.tar.gz: 5a17ab3d20a8fb8bcc66d14bee50116f76bdb74697caab4ff4585cdeffe0176f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c1f7f6f78e3a637ae852c3d2383e8e9eb4a4ea18aba3a86e704700555bd1220b33cd49fff0f393dc6517fd5fa693096b8ac71c6769fcf3177b1708ecc6d9fd57
|
7
|
+
data.tar.gz: 821597ffa59e40970823c431683625cd6f0fe410dca894ef1a08192a2fa14eac93d65aae42fba9e999010c098a1747d21d3e89da17ec60383cab9d27c9f65b0c
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,16 @@
|
|
1
1
|
# Release History: opentelemetry-instrumentation-rspec
|
2
2
|
|
3
|
+
### v0.2.1 / 2023-01-14
|
4
|
+
|
5
|
+
* DOCS: Fix gem homepage
|
6
|
+
* DOCS: More gem documentation fixes
|
7
|
+
|
8
|
+
### v0.2.0 / 2022-06-09
|
9
|
+
|
10
|
+
* Upgrading Base dependency version
|
11
|
+
* FIXED: Strip console codes from RSpec messages and better handle multiple failures
|
12
|
+
* FIXED: Broken test file requirements
|
13
|
+
|
3
14
|
### v0.1.0 / 2021-12-01
|
4
15
|
|
5
16
|
* Initial release.
|
data/README.md
CHANGED
@@ -55,7 +55,7 @@ To avoid spans from being dropped, which will mean you lose insight into your sp
|
|
55
55
|
|
56
56
|
## Examples
|
57
57
|
|
58
|
-
Example usage can be seen in the `/example` directory [here](https://github.com/open-telemetry/opentelemetry-ruby/blob/main/instrumentation/rspec/example)
|
58
|
+
Example usage can be seen in the `/example` directory [here](https://github.com/open-telemetry/opentelemetry-ruby-contrib/blob/main/instrumentation/rspec/example)
|
59
59
|
|
60
60
|
## How can I get involved?
|
61
61
|
|
@@ -69,7 +69,7 @@ The `opentelemetry-instrumentation-rspec` gem is distributed under the Apache 2.
|
|
69
69
|
|
70
70
|
[bundler-home]: https://bundler.io
|
71
71
|
[repo-github]: https://github.com/open-telemetry/opentelemetry-ruby
|
72
|
-
[license-github]: https://github.com/open-telemetry/opentelemetry-ruby/blob/main/LICENSE
|
72
|
+
[license-github]: https://github.com/open-telemetry/opentelemetry-ruby-contrib/blob/main/LICENSE
|
73
73
|
[ruby-sig]: https://github.com/open-telemetry/community#ruby-sig
|
74
74
|
[community-meetings]: https://github.com/open-telemetry/community#community-meetings
|
75
75
|
[discussions-url]: https://github.com/open-telemetry/opentelemetry-ruby/discussions
|
@@ -72,11 +72,25 @@ module OpenTelemetry
|
|
72
72
|
|
73
73
|
span.set_attribute('rspec.example.result', result.status.to_s)
|
74
74
|
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
75
|
+
add_exception_and_failures(span, result.exception)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
def add_exception_and_failures(span, exception)
|
80
|
+
return if exception.nil?
|
81
|
+
|
82
|
+
exception_message = strip_console_codes(exception.message)
|
83
|
+
span.status = OpenTelemetry::Trace::Status.error(exception_message)
|
84
|
+
|
85
|
+
span.set_attribute('rspec.example.failure_message', exception_message) if exception.is_a? ::RSpec::Expectations::ExpectationNotMetError
|
86
|
+
|
87
|
+
if exception.is_a? ::RSpec::Core::MultipleExceptionError
|
88
|
+
exception.all_exceptions.each do |error|
|
89
|
+
record_stripped_exception(span, error)
|
79
90
|
end
|
91
|
+
span.set_attribute('rspec.example.failure_message', multiple_failure_message(exception)) if exception.failures.any?
|
92
|
+
else
|
93
|
+
span.record_exception(exception, attributes: { 'exception.message' => exception_message })
|
80
94
|
end
|
81
95
|
end
|
82
96
|
|
@@ -96,6 +110,19 @@ module OpenTelemetry
|
|
96
110
|
span.finish(end_timestamp: current_timestamp)
|
97
111
|
OpenTelemetry::Context.detach(token)
|
98
112
|
end
|
113
|
+
|
114
|
+
def record_stripped_exception(span, error)
|
115
|
+
error_message = strip_console_codes(error.message)
|
116
|
+
span.record_exception(error, attributes: { 'exception.message' => error_message })
|
117
|
+
end
|
118
|
+
|
119
|
+
def strip_console_codes(string)
|
120
|
+
string.gsub(/\e\[([;\d]+)?m/, '')
|
121
|
+
end
|
122
|
+
|
123
|
+
def multiple_failure_message(exception)
|
124
|
+
exception.failures.map(&:message).map(&method(:strip_console_codes)).join("\n\n")
|
125
|
+
end
|
99
126
|
end
|
100
127
|
end
|
101
128
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opentelemetry-instrumentation-rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- OpenTelemetry Authors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: opentelemetry-api
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.
|
33
|
+
version: 0.21.0
|
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.
|
40
|
+
version: 0.21.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: appraisal
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -56,16 +56,16 @@ dependencies:
|
|
56
56
|
name: bundler
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '2.4'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '2.4'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: minitest
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -94,34 +94,62 @@ dependencies:
|
|
94
94
|
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: opentelemetry-test-helpers
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: rake
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
115
|
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
117
|
+
version: '13.0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '13.0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rspec
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 3.10.0
|
104
132
|
type: :development
|
105
133
|
prerelease: false
|
106
134
|
version_requirements: !ruby/object:Gem::Requirement
|
107
135
|
requirements:
|
108
136
|
- - "~>"
|
109
137
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
138
|
+
version: 3.10.0
|
111
139
|
- !ruby/object:Gem::Dependency
|
112
140
|
name: rubocop
|
113
141
|
requirement: !ruby/object:Gem::Requirement
|
114
142
|
requirements:
|
115
143
|
- - "~>"
|
116
144
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
145
|
+
version: 1.41.1
|
118
146
|
type: :development
|
119
147
|
prerelease: false
|
120
148
|
version_requirements: !ruby/object:Gem::Requirement
|
121
149
|
requirements:
|
122
150
|
- - "~>"
|
123
151
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
152
|
+
version: 1.41.1
|
125
153
|
- !ruby/object:Gem::Dependency
|
126
154
|
name: simplecov
|
127
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -195,14 +223,14 @@ files:
|
|
195
223
|
- lib/opentelemetry/instrumentation/rspec/formatter.rb
|
196
224
|
- lib/opentelemetry/instrumentation/rspec/instrumentation.rb
|
197
225
|
- lib/opentelemetry/instrumentation/rspec/version.rb
|
198
|
-
homepage: https://github.com/open-telemetry/opentelemetry-ruby
|
226
|
+
homepage: https://github.com/open-telemetry/opentelemetry-ruby-contrib
|
199
227
|
licenses:
|
200
228
|
- Apache-2.0
|
201
229
|
metadata:
|
202
|
-
changelog_uri: https://
|
203
|
-
source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/instrumentation/rspec
|
204
|
-
bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
|
205
|
-
documentation_uri: https://
|
230
|
+
changelog_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-rspec/0.2.1/file/CHANGELOG.md
|
231
|
+
source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/tree/main/instrumentation/rspec
|
232
|
+
bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/issues
|
233
|
+
documentation_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-rspec/0.2.1
|
206
234
|
post_install_message:
|
207
235
|
rdoc_options: []
|
208
236
|
require_paths:
|
@@ -211,7 +239,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
211
239
|
requirements:
|
212
240
|
- - ">="
|
213
241
|
- !ruby/object:Gem::Version
|
214
|
-
version: 2.
|
242
|
+
version: 2.6.0
|
215
243
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
216
244
|
requirements:
|
217
245
|
- - ">="
|