trifle-traces 1.0.1 → 1.1.0

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: e70e8771d1d11a1b52b2d7bc059d05f6e6082f876f1e5b28440d914e91acf789
4
- data.tar.gz: 4ec2c1d3ed119b40166e7129e35f0ad70f5b9d5dab5a4cc20095f7265f3e2dc3
3
+ metadata.gz: 91b9354c649b9cc57c68deb507c3118a64f07b5de873ad896084cc5937194797
4
+ data.tar.gz: 6aed57bedb884e8e7d4b8e9de5ddff7704cad99f2a84558b85ea250c0e288bb9
5
5
  SHA512:
6
- metadata.gz: 8b9c3a99caecdf88a6d57d08ad4c0429b443122d5fbee1511978e629040805edb6e76599e366577cbb57734f2af163ed60e0029efc6b6726b66b24ec0ab00cbd
7
- data.tar.gz: '02838f426cba718cce2137db2f4ff3de1f2af44a31a73839de9ffe0701199d3fa83563ad98f4ccb73b8b3237776ea5958539d52e85ffe7d76b80b2daadac57cc'
6
+ metadata.gz: bc5a6f0a31b4d791b3310d779abfdeb94ffec8f156339ac793d4dedb927d93a0e86279bf348c8d8ae9aefe43b0bdade208fc16a7d99b598c7f9d1df2fc2ba24d
7
+ data.tar.gz: dbbb9de77e803b57c5145d53399c61e93457d7595d2a8ddad9611928beace209c7df5c27f4c72241f12069e4acf2e70251a697fc32fc31b7b92157d7c139c6ca
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- trifle-traces (1.0.1)
4
+ trifle-traces (1.1.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -3,12 +3,13 @@
3
3
  module Trifle
4
4
  module Traces
5
5
  class Configuration
6
- attr_accessor :tracer_class, :callbacks, :bump_every
6
+ attr_accessor :tracer_class, :callbacks, :bump_every, :serializer_class
7
7
 
8
8
  def initialize
9
9
  @tracer_class = Trifle::Traces::Tracer::Hash
10
+ @serializer_class = Trifle::Traces::Serializer::Inspect
10
11
  @callbacks = { liftoff: [], bump: [], wrapup: [] }
11
- @bump_every = 15.seconds
12
+ @bump_every = 15 # seconds
12
13
  end
13
14
 
14
15
  def on_liftoff(tracer)
@@ -4,6 +4,8 @@ module Trifle
4
4
  module Traces
5
5
  module Middleware
6
6
  class Sidekiq
7
+ include ::Sidekiq::ServerMiddleware if const_defined?('::Sidekiq::ServerMiddleware')
8
+
7
9
  def call(_worker, job, _queue)
8
10
  Trifle::Traces.tracer = tracer_for(job: job)
9
11
  yield
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trifle
4
+ module Traces
5
+ module Serializer
6
+ class Inspect
7
+ def sanitize(payload)
8
+ payload.inspect
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'json'
4
+
5
+ module Trifle
6
+ module Traces
7
+ module Serializer
8
+ class Json
9
+ def sanitize(payload)
10
+ payload.to_json
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Trifle
4
+ module Traces
5
+ module Serializer
6
+ class String
7
+ def sanitize(payload)
8
+ payload.to_s
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -10,6 +10,7 @@ module Trifle
10
10
  @key = key
11
11
  @meta = meta
12
12
  @config = config
13
+ @result_serializer = config.serializer_class.new
13
14
  set_defaults!
14
15
 
15
16
  trace("Tracer has been initialized for #{key}")
@@ -63,7 +64,7 @@ module Trifle
63
64
 
64
65
  def dump_result(result)
65
66
  @data << {
66
- at: now, message: "#{@result_prefix}#{result.inspect}",
67
+ at: now, message: "#{@result_prefix}#{@result_serializer.sanitize(result)}",
67
68
  state: :success, type: :raw
68
69
  }
69
70
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Trifle
4
4
  module Traces
5
- VERSION = '1.0.1'
5
+ VERSION = '1.1.0'
6
6
  end
7
7
  end
data/lib/trifle/traces.rb CHANGED
@@ -3,6 +3,9 @@
3
3
  require 'trifle/traces/configuration'
4
4
  require 'trifle/traces/tracer/hash'
5
5
  require 'trifle/traces/tracer/null'
6
+ require 'trifle/traces/serializer/inspect'
7
+ require 'trifle/traces/serializer/json'
8
+ require 'trifle/traces/serializer/string'
6
9
  require 'trifle/traces/middleware/rack'
7
10
  require 'trifle/traces/middleware/rails_controller'
8
11
  require 'trifle/traces/middleware/sidekiq'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trifle-traces
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jozef Vaclavik
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-11-16 00:00:00.000000000 Z
11
+ date: 2023-08-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -108,6 +108,9 @@ files:
108
108
  - lib/trifle/traces/middleware/rack.rb
109
109
  - lib/trifle/traces/middleware/rails_controller.rb
110
110
  - lib/trifle/traces/middleware/sidekiq.rb
111
+ - lib/trifle/traces/serializer/inspect.rb
112
+ - lib/trifle/traces/serializer/json.rb
113
+ - lib/trifle/traces/serializer/string.rb
111
114
  - lib/trifle/traces/tracer/hash.rb
112
115
  - lib/trifle/traces/tracer/null.rb
113
116
  - lib/trifle/traces/version.rb