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 +4 -4
- data/CHANGELOG.md +30 -0
- data/Gemfile.lock +2 -2
- data/lib/trifle/logger/configuration.rb +2 -2
- data/lib/trifle/logger/middleware/rack.rb +2 -1
- data/lib/trifle/logger/middleware/rails_controller.rb +1 -1
- data/lib/trifle/logger/middleware/sidekiq.rb +1 -1
- data/lib/trifle/logger/tracer/hash.rb +16 -16
- data/lib/trifle/logger/version.rb +1 -1
- data/trifle-logger.gemspec +1 -0
- metadata +8 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ab86cac1ffba4cba4a8ad7e93bf5a290c57489a56d9a983e77dc75f2994a9e7d
|
4
|
+
data.tar.gz: 51bbee0971c162d01d9c32e5b4bf26a54e8036530543e3ea9ecf2eff2747eb37
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
@@ -3,10 +3,10 @@
|
|
3
3
|
module Trifle
|
4
4
|
module Logger
|
5
5
|
class Configuration
|
6
|
-
attr_accessor :
|
6
|
+
attr_accessor :tracer_class, :callbacks, :bump_every
|
7
7
|
|
8
8
|
def initialize
|
9
|
-
@
|
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
|
-
#
|
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)
|
@@ -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
|
39
|
+
rescue StandardError => e
|
36
40
|
raise e
|
37
41
|
ensure
|
38
42
|
dump_message(
|
39
43
|
message,
|
40
|
-
head: head,
|
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,
|
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,
|
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
|
data/trifle-logger.gemspec
CHANGED
@@ -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.
|
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-
|
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
|
-
|
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.
|
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: []
|