trifle-logger 0.2.2 → 0.4.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: 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: []