trifle-logger 0.2.2 → 0.4.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: 22b50e2000ee750a8f1d944ac0616112672f0075e2dd083775946c989a7a9262
4
- data.tar.gz: f11284203057303f713dfd097cf48cc1bfa4a59169118bd2b80fa9efbe95b9c4
3
+ metadata.gz: ab86cac1ffba4cba4a8ad7e93bf5a290c57489a56d9a983e77dc75f2994a9e7d
4
+ data.tar.gz: 51bbee0971c162d01d9c32e5b4bf26a54e8036530543e3ea9ecf2eff2747eb37
5
5
  SHA512:
6
- metadata.gz: fd97d0bd9e57ed06448352b30c65a544f49edbdabcabdbfdd1c326e7e46d2904d8adb99c5b8993dd5c743610ba13b1f191a38f408b3fdc1eaf130fa6a0767dc6
7
- data.tar.gz: a51b16ea5f6a884db7daea389325a2a316b7594290b8ad16bcb1fcadb8aef943c20c2929931f3d7c074e95de64c29983401e08f3511116c7af60181e9fe5f3c1
6
+ metadata.gz: d3caf38aa07b88e4b7d42377607e2b4b78096d9d0a6f1e23c88228fe344f8012833685b5dec26ddb69547e57e732128d086028ae4bc98730cd7889f62e8a631e
7
+ data.tar.gz: 58141cfce95556deaa8b97368d357a087fcbaa734f8ed363e00f53792dd8adf60bbe2cdf0f51f90d003667a1bdec4ee439c24666103905b567d73bdd8b54a022
data/CHANGELOG.md ADDED
@@ -0,0 +1,30 @@
1
+ ## [Unreleased]
2
+
3
+ ## [0.4.0] - 2022-03-28
4
+
5
+ - Feat: Hash tracer uses type to store text, head, raw, media.
6
+
7
+ ## [0.3.1] - 2022-01-11
8
+
9
+ - Feat: Allow reference to be passed into the Tracer directly
10
+
11
+ ## [0.3.0] - 2022-01-11
12
+
13
+ - Feat: Rename tracer_klass to tracer_class and use it consistently through middlewares
14
+
15
+ ## [0.2.2] - 2022-01-11
16
+
17
+ - Feat: Allow tracer to accept custom configuration
18
+
19
+ ## [0.2.1] - 2021-06-11
20
+
21
+ - Chore: Update license
22
+ - Chore: Drop ruby 2.x
23
+
24
+ ## [0.2.0] - 2021-06-1
25
+
26
+ - Feat: Add callbacks
27
+
28
+ ## [0.1.x] - 2021-03-29
29
+
30
+ - Chore: Bunch of initial commits :)
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- trifle-logger (0.2.2)
4
+ trifle-logger (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -56,4 +56,4 @@ DEPENDENCIES
56
56
  trifle-logger!
57
57
 
58
58
  BUNDLED WITH
59
- 2.2.3
59
+ 2.3.5
@@ -3,10 +3,10 @@
3
3
  module Trifle
4
4
  module Logger
5
5
  class Configuration
6
- attr_accessor :tracer_klass, :callbacks, :bump_every
6
+ attr_accessor :tracer_class, :callbacks, :bump_every
7
7
 
8
8
  def initialize
9
- @tracer_klass = Trifle::Logger::Tracer::Hash
9
+ @tracer_class = Trifle::Logger::Tracer::Hash
10
10
  @callbacks = { liftoff: [], bump: [], wrapup: [] }
11
11
  @bump_every = 15.seconds
12
12
  end
@@ -9,7 +9,8 @@ module Trifle
9
9
  end
10
10
 
11
11
  def call(env)
12
- # Trifle::Logger.tracer = Trifle::Logger::Tracer::Hash.new
12
+ # TODO: set up key
13
+ # Trifle::Logger.tracer = Trifle::Logger.default.tracer_class.new
13
14
  @status, @headers, @response = @app.call(env)
14
15
  rescue => e # rubocop:disable Style/RescueStandardError
15
16
  Trifle::Logger.tracer&.trace("Exception: #{e}", state: :error)
@@ -17,7 +17,7 @@ module Trifle
17
17
 
18
18
  module InstanceMethods
19
19
  def with_trifle_logger
20
- Trifle::Logger.tracer = Trifle::Logger::Tracer::Hash.new(
20
+ Trifle::Logger.tracer = Trifle::Logger.default.tracer_class.new(
21
21
  key: trace_key, meta: trace_meta
22
22
  )
23
23
  yield
@@ -18,7 +18,7 @@ module Trifle
18
18
  def tracer_for(job:)
19
19
  return nil unless job['logger_key']
20
20
 
21
- Trifle::Logger.default.tracer_klass.new(
21
+ Trifle::Logger.default.tracer_class.new(
22
22
  key: job['logger_key'], meta: job['args']
23
23
  )
24
24
  end
@@ -6,19 +6,23 @@ module Trifle
6
6
  class Hash
7
7
  attr_accessor :key, :meta, :data, :tags, :artifacts, :state, :ignore, :reference
8
8
 
9
- def initialize(key:, meta: nil, config: nil)
9
+ def initialize(key:, reference: nil, meta: nil, config: nil)
10
10
  @key = key
11
11
  @meta = meta
12
12
  @config = config
13
+ set_defaults!
14
+
15
+ trace("Tracer has been initialized for #{key}")
16
+ @reference = reference || liftoff.first
17
+ end
18
+
19
+ def set_defaults!
13
20
  @data = []
14
21
  @tags = []
15
22
  @artifacts = []
16
23
  @state = :running
17
24
  @ignore = false
18
25
  @result_prefix = '=> '
19
-
20
- trace("Tracer has been initialized for #{key}")
21
- @reference = liftoff.first
22
26
  end
23
27
 
24
28
  def config
@@ -32,29 +36,28 @@ module Trifle
32
36
 
33
37
  def trace(message, state: :success, head: false) # rubocop:disable Metrics/MethodLength
34
38
  result = yield if block_given?
35
- rescue => e # rubocop:disable Style/RescueStandardError
39
+ rescue StandardError => e
36
40
  raise e
37
41
  ensure
38
42
  dump_message(
39
43
  message,
40
- head: head, state: block_given? && result.nil? || e ? :error : state
44
+ head: head,
45
+ type: head ? :head : :text,
46
+ state: e ? :error : state
41
47
  )
42
48
  dump_result(result) if block_given?
43
49
  bump
44
50
  result
45
51
  end
46
52
 
47
- def dump_message(message, head:, state:)
48
- @data << {
49
- at: now, message: message,
50
- state: state, head: head, meta: false, media: false
51
- }
53
+ def dump_message(message, type:, state:)
54
+ @data << { at: now, message: message, state: state, type: type }
52
55
  end
53
56
 
54
57
  def dump_result(result)
55
58
  @data << {
56
59
  at: now, message: "#{@result_prefix}#{result.inspect}",
57
- state: :success, head: false, meta: true, media: false
60
+ state: :success, type: :raw
58
61
  }
59
62
  end
60
63
 
@@ -69,10 +72,7 @@ module Trifle
69
72
  end
70
73
 
71
74
  def artifact(name, path)
72
- @data << {
73
- at: now, message: name,
74
- state: :success, head: false, meta: false, media: true
75
- }
75
+ @data << { at: now, message: name, state: :success, type: :media, size: File.size(path) }
76
76
  @artifacts << path
77
77
  bump
78
78
  path
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Trifle
4
4
  module Logger
5
- VERSION = '0.2.2'
5
+ VERSION = '0.4.0'
6
6
  end
7
7
  end
@@ -15,6 +15,7 @@ Gem::Specification.new do |spec|
15
15
 
16
16
  spec.metadata['homepage_uri'] = spec.homepage
17
17
  spec.metadata['source_code_uri'] = 'https://github.com/trifle-io/trifle-logger'
18
+ spec.metadata['changelog_uri'] = 'https://github.com/trifle-io/trifle-logger/blob/main/CHANGELOG.md'
18
19
 
19
20
  # Specify which files should be added to the gem when it is released.
20
21
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trifle-logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jozef Vaclavik
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-01-11 00:00:00.000000000 Z
11
+ date: 2022-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -96,6 +96,7 @@ files:
96
96
  - ".rubocop.yml"
97
97
  - ".ruby-version"
98
98
  - ".tool-versions"
99
+ - CHANGELOG.md
99
100
  - Gemfile
100
101
  - Gemfile.lock
101
102
  - LICENSE
@@ -118,7 +119,8 @@ licenses:
118
119
  metadata:
119
120
  homepage_uri: https://trifle.io
120
121
  source_code_uri: https://github.com/trifle-io/trifle-logger
121
- post_install_message:
122
+ changelog_uri: https://github.com/trifle-io/trifle-logger/blob/main/CHANGELOG.md
123
+ post_install_message:
122
124
  rdoc_options: []
123
125
  require_paths:
124
126
  - lib
@@ -133,8 +135,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
133
135
  - !ruby/object:Gem::Version
134
136
  version: '0'
135
137
  requirements: []
136
- rubygems_version: 3.2.3
137
- signing_key:
138
+ rubygems_version: 3.2.9
139
+ signing_key:
138
140
  specification_version: 4
139
141
  summary: Simple logger backed by Hash
140
142
  test_files: []