opentelemetry-instrumentation-rdkafka 0.2.2 → 0.3.0

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: b413d05e4df8962205f9b8928a10766145730a0ef50ef1abcacb5e0a1f1b811b
4
- data.tar.gz: 311e8f68b652fdbd39a8be37133e33c6a8f2baf194dfff3ff9747d81feae744c
3
+ metadata.gz: 92646be4a6e8f214ac0139a254f19ffc97c40398517447781b3c57cb3f2bf44d
4
+ data.tar.gz: b49d0249c441fa40ddff9b7990829b618ea5ee9673e824d783263d7ca042636d
5
5
  SHA512:
6
- metadata.gz: d1670dbfad19e60dc2e0e265f33521e6b723d4bff9fe0d604d96a68a14b46b9f8fe899e05373f883ff5838d208d278e7bcd889c0b199935c3ca1a547f3030035
7
- data.tar.gz: 72c23f3685f1266b510f1783fae65294e0d5cea985de65aef9d3f709efc7cffec32b7dd60d17790d9326581f46bbf359300a16a276521d34183403d32b34368d
6
+ metadata.gz: 6ce06206e41c5b8bf2e342bd016f37ab6f31d29c8ff286dbeabaa73fac53d89d4867b93a807d8c5fa52927b19ae416d55449c8ecb5c48c2c1edcc4996494caee
7
+ data.tar.gz: 54f2553fb875d5dca054a0d9a3f88258a7f5ffbd05cff8ebbc36e6bdeb01564f070308a4443d8dd16a16f3f6426f079620ee2f5bca5948b32fda5f45c5645f2f
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Release History: opentelemetry-instrumentation-rdkafka
2
2
 
3
+ ### v0.3.0 / 2023-04-17
4
+
5
+ * BREAKING CHANGE: Drop support for EoL Ruby 2.7
6
+
7
+ * ADDED: Drop support for EoL Ruby 2.7
8
+
9
+ ### v0.2.3 / 2023-03-24
10
+
11
+ * FIXED: Skip recording non-utf8 kafka keys in racecar and rdkafka
12
+
3
13
  ### v0.2.2 / 2023-01-14
4
14
 
5
15
  * DOCS: Fix gem homepage
@@ -20,7 +20,9 @@ module OpenTelemetry
20
20
  'messaging.kafka.offset' => message.offset
21
21
  }
22
22
 
23
- attributes['messaging.kafka.message_key'] = message.key if message.key
23
+ message_key = extract_message_key(message.key)
24
+ attributes['messaging.kafka.message_key'] = message_key if message_key
25
+
24
26
  parent_context = OpenTelemetry.propagation.extract(message.headers, getter: OpenTelemetry::Common::Propagation.symbol_key_getter)
25
27
  span_context = OpenTelemetry::Trace.current_span(parent_context).context
26
28
  links = [OpenTelemetry::Trace::Link.new(span_context)] if span_context.valid?
@@ -63,6 +65,15 @@ module OpenTelemetry
63
65
  def tracer
64
66
  Rdkafka::Instrumentation.instance.tracer
65
67
  end
68
+
69
+ def extract_message_key(key)
70
+ # skip encode if already valid utf8
71
+ return key if key.nil? || (key.encoding == Encoding::UTF_8 && key.valid_encoding?)
72
+
73
+ key.encode(Encoding::UTF_8)
74
+ rescue Encoding::UndefinedConversionError
75
+ nil
76
+ end
66
77
  end
67
78
  end
68
79
  end
@@ -7,7 +7,7 @@
7
7
  module OpenTelemetry
8
8
  module Instrumentation
9
9
  module Rdkafka
10
- VERSION = '0.2.2'
10
+ VERSION = '0.3.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-rdkafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.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: 2023-01-14 00:00:00.000000000 Z
11
+ date: 2023-04-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.21.0
47
+ version: 0.22.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.21.0
54
+ version: 0.22.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: appraisal
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -112,16 +112,16 @@ dependencies:
112
112
  name: opentelemetry-test-helpers
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ">="
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '0'
117
+ version: '0.3'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ">="
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '0'
124
+ version: '0.3'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: pry-byebug
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -170,14 +170,14 @@ dependencies:
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 1.41.1
173
+ version: 1.48.1
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 1.41.1
180
+ version: 1.48.1
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: simplecov
183
183
  requirement: !ruby/object:Gem::Requirement
@@ -256,10 +256,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby-contrib
256
256
  licenses:
257
257
  - Apache-2.0
258
258
  metadata:
259
- changelog_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-rdkafka/0.2.2/file/CHANGELOG.md
259
+ changelog_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-rdkafka/0.3.0/file/CHANGELOG.md
260
260
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/tree/main/instrumentation/rdkafka
261
261
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/issues
262
- documentation_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-rdkafka/0.2.2
262
+ documentation_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-rdkafka/0.3.0
263
263
  post_install_message:
264
264
  rdoc_options: []
265
265
  require_paths:
@@ -268,14 +268,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
268
268
  requirements:
269
269
  - - ">="
270
270
  - !ruby/object:Gem::Version
271
- version: 2.6.0
271
+ version: '3.0'
272
272
  required_rubygems_version: !ruby/object:Gem::Requirement
273
273
  requirements:
274
274
  - - ">="
275
275
  - !ruby/object:Gem::Version
276
276
  version: '0'
277
277
  requirements: []
278
- rubygems_version: 3.1.6
278
+ rubygems_version: 3.2.33
279
279
  signing_key:
280
280
  specification_version: 4
281
281
  summary: Rdkafka instrumentation for the OpenTelemetry framework