stack-service-base 0.0.75 → 0.0.76

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: 42a684599ec2f5f4ce219ff383bb91f280f3551633c88e5c854971e358b4d40a
4
- data.tar.gz: 900890a86bfc5070661c1dcf7b533994685cfd118197d960e16bff8fe2236722
3
+ metadata.gz: 5040caaeefe798a92d0f5758464a592094ab4110ed47eb1454cbc6105d054792
4
+ data.tar.gz: 8df39599e8a2ef12abca2d7ba2a1117fbcaebf673608f2f21ccbc9d91a68da0b
5
5
  SHA512:
6
- metadata.gz: b5d88abae4042bfbb7dff5a190c1d31c27fc8a712eda46984c47f4c5e301a56cf25484a6ae49ed573b066d9c7776d8fbc05d14c865651d70696daa8236f8dacf
7
- data.tar.gz: 189b5f00ebb89a0d08e1d482c27795f95697ac8e00388940e073218790420d0fe8cd8ab329ed7a441d6450dec2e6b653899f111bc408aeddfdfb75a14ca46ddd
6
+ metadata.gz: 461bc25463a6a72254b06911850420d7668e624d674810223478598579ad460d0b3d457a4fec9a49deed70b609edb3b3d4a4edb37ce74202fdf7c36d5d0c1af2
7
+ data.tar.gz: 5ce16e4b261baf9e920b09ce0765df22e5ef14873150e02d1c28ced389a10ec758612913d23e44c3c97ddfa5bb2d2a0b5e06c1102ea13b058237c3f302dccbe7
@@ -149,7 +149,39 @@ if defined? Sequel and OTEL_ENABLED
149
149
  end
150
150
  end
151
151
 
152
- def otl_span(name, attributes = {})
152
+
153
+ # Thread.otl_new do
154
+ # ...
155
+ # end
156
+
157
+ class << Thread
158
+ alias_method :_otel_original_new, :new
159
+
160
+ if OTEL_ENABLED
161
+ def otl_new(*args, **kwargs, &block)
162
+ ctx = OpenTelemetry::Context.current
163
+
164
+ _otel_original_new(*args, **kwargs) do |*bargs|
165
+ OpenTelemetry::Context.with_current(ctx) do
166
+ block.call(*bargs)
167
+ end
168
+ end
169
+ end
170
+ else
171
+ alias_method :otl_new, :new
172
+ end
173
+ end
174
+
175
+ def otl_span_thread(name, attributes = {}, &block)
176
+ ctx_ = OpenTelemetry::Context.current
177
+ Thread.new do
178
+ OpenTelemetry::Context.with_current(ctx_) do
179
+ otl_span(name, attributes, &block)
180
+ end
181
+ end
182
+ end
183
+
184
+ def otl_span(name, attributes = {}, &block)
153
185
  # span_ = OpenTelemetry::Trace.current_span
154
186
  return yield(nil) unless OTEL_ENABLED && Otel.enabled
155
187
 
@@ -170,13 +202,13 @@ end
170
202
  # end
171
203
 
172
204
  def otl_traceparent_id
173
- return nil unless OTEL_ENABLED && Otel.enabled
205
+ return nil unless OTEL_ENABLED && Otel.enabled
174
206
 
175
- span_context = OpenTelemetry::Trace.current_span.context
176
- trace_id = span_context.trace_id.unpack1('H*')
177
- span_id = span_context.span_id.unpack1('H*')
178
- trace_flags = format('%02x', span_context.trace_flags.instance_eval{ @flags }) # Two-digit hex for trace flags (e.g., sampled)
179
- "00-#{trace_id}-#{span_id}-#{trace_flags}"
207
+ span_context = OpenTelemetry::Trace.current_span.context
208
+ trace_id = span_context.trace_id.unpack1('H*')
209
+ span_id = span_context.span_id.unpack1('H*')
210
+ trace_flags = format('%02x', span_context.trace_flags.instance_eval{ @flags }) # Two-digit hex for trace flags (e.g., sampled)
211
+ "00-#{trace_id}-#{span_id}-#{trace_flags}"
180
212
  end
181
213
 
182
214
  def otl_def(name)
@@ -1,3 +1,3 @@
1
1
  module StackServiceBase
2
- VERSION = '0.0.75'
2
+ VERSION = '0.0.76'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stack-service-base
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.75
4
+ version: 0.0.76
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artyom B