highlight_io 0.3.0 → 0.3.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2adbe799337d2c59b751869b529af2a39efe40c2512bc345b133ffbd3e05eb51
4
- data.tar.gz: 24c098762842080dbc45261fe96deb42e1da7da592839eda378a99f22866718c
3
+ metadata.gz: 8ac88fa49d586b18a7e1be34e4f2bbda4cdd574fcbeb83ffc97b75c0101d5b43
4
+ data.tar.gz: 59840de16d8b5d3839c18aac425b7ea47aa76942a3ff4e539e8e2af623f1797b
5
5
  SHA512:
6
- metadata.gz: 1d2796d575ba7938606af965ba98f72a4dc41d9672d01517e26550fb86e7333233bae97ec6ed769a429b2badd5b7c69fc25c9338205130b6f6185e2342ce451d
7
- data.tar.gz: 12502c3c4dce422ca34bb76201dbdb2b3f5de1642e3e1eecaa3f4a546c73eb88091e955e018dab06c44f3ee4e2cd0a2607d50b853a0348f7c0c1c211f10ecd4c
6
+ metadata.gz: 834eeda394658f10de79c9102cb18415a0b2918030957a105cc6ba7505fe2e20d8ad63d28c4ca6ebe6dce7091207060343661c305a67844fc41c2cdc0e00446b
7
+ data.tar.gz: 5723050e4cc62d07d4c53dfb6a1d34fb3771c622833643a0cacc7a5a5f6987ae432de560f16bb000e81631a8c8fdbad296cd79972811162a60dd303b2b1ad5ed
data/.rubocop.yml CHANGED
@@ -10,6 +10,9 @@ Style/Documentation:
10
10
  Metrics/MethodLength:
11
11
  Enabled: false
12
12
 
13
+ Metrics/CyclomaticComplexity:
14
+ Max: 8
15
+
13
16
  Naming/MethodParameterName:
14
17
  Enabled: false
15
18
 
data/Gemfile.lock CHANGED
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- highlight_io (0.3.0)
5
- grpc (~> 1.52)
4
+ highlight_io (0.3.1)
5
+ grpc (~> 1.65)
6
6
  opentelemetry-exporter-otlp (~> 0.28.1)
7
7
  opentelemetry-instrumentation-all (~> 0.62.1)
8
8
  opentelemetry-sdk (~> 1.5.0)
@@ -12,8 +12,8 @@ GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
14
  ast (2.4.2)
15
- google-protobuf (3.25.4-arm64-darwin)
16
- google-protobuf (3.25.4-x86_64-linux)
15
+ google-protobuf (3.25.3-arm64-darwin)
16
+ google-protobuf (3.25.3-x86_64-linux)
17
17
  googleapis-common-protos-types (1.15.0)
18
18
  google-protobuf (>= 3.18, < 5.a)
19
19
  grpc (1.65.2-arm64-darwin)
@@ -254,6 +254,7 @@ GEM
254
254
 
255
255
  PLATFORMS
256
256
  arm64-darwin-22
257
+ arm64-darwin-23
257
258
  x86_64-linux
258
259
 
259
260
  DEPENDENCIES
data/highlight.gemspec CHANGED
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ['lib']
24
24
 
25
- spec.add_runtime_dependency 'grpc', '~> 1.52'
25
+ spec.add_runtime_dependency 'grpc', '~> 1.65'
26
26
  spec.add_runtime_dependency 'opentelemetry-exporter-otlp', '~> 0.28.1'
27
27
  spec.add_runtime_dependency 'opentelemetry-instrumentation-all', '~> 0.62.1'
28
28
  spec.add_runtime_dependency 'opentelemetry-sdk', '~> 1.5.0'
@@ -1,3 +1,3 @@
1
1
  module Highlight
2
- VERSION = '0.3.0'.freeze
2
+ VERSION = '0.3.1'.freeze
3
3
  end
data/lib/highlight.rb CHANGED
@@ -26,6 +26,18 @@ module Highlight
26
26
  end
27
27
  end
28
28
 
29
+ def self.log(level, message, attrs = {})
30
+ H.instance.record_log(nil, nil, level, message, attrs)
31
+ end
32
+
33
+ def self.exception(error, attrs = {})
34
+ H.instance.record_exception(error, attrs)
35
+ end
36
+
37
+ def self.traceparent_meta
38
+ Helpers.traceparent_meta
39
+ end
40
+
29
41
  class H
30
42
  HIGHLIGHT_REQUEST_HEADER = 'X-Highlight-Request'.freeze
31
43
  OTLP_HTTP = 'https://otel.highlight.io:4318'.freeze
@@ -130,6 +142,7 @@ module Highlight
130
142
  function.delete_prefix!('in `')
131
143
  function.delete_suffix!('"')
132
144
  end
145
+
133
146
  @tracer.in_span('highlight.log', attributes: {
134
147
  HIGHLIGHT_SESSION_ATTRIBUTE => session_id,
135
148
  HIGHLIGHT_TRACE_ATTRIBUTE => request_id
@@ -255,4 +268,21 @@ module Highlight
255
268
  end
256
269
  end
257
270
  end
271
+
272
+ module Helpers
273
+ if defined?(ActionView)
274
+ include ActionView::Helpers
275
+ extend ActionView::Helpers::TagHelper
276
+ end
277
+
278
+ def self.traceparent_meta
279
+ current_trace = OpenTelemetry::Trace.current_span
280
+ trace_id = current_trace&.context&.trace_id
281
+ span_id = current_trace&.context&.span_id
282
+ hex_trace_id = trace_id&.unpack1('H*') || '00000000000000000000000000000000'
283
+ hex_span_id = span_id&.unpack1('H*') || '0000000000000000'
284
+
285
+ tag(:meta, name: 'traceparent', content: "00-#{hex_trace_id}-#{hex_span_id}-01")
286
+ end
287
+ end
258
288
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: highlight_io
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Highlight
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-15 00:00:00.000000000 Z
11
+ date: 2024-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: grpc
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.52'
19
+ version: '1.65'
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: '1.52'
26
+ version: '1.65'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: opentelemetry-exporter-otlp
29
29
  requirement: !ruby/object:Gem::Requirement