cogger 2.4.0 → 2.5.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
- checksums.yaml.gz.sig +0 -0
- data/README.adoc +19 -12
- data/cogger.gemspec +1 -1
- data/lib/cogger/formatters/color.rb +1 -1
- data/lib/cogger/formatters/crash.rb +1 -1
- data/lib/cogger/formatters/json.rb +1 -1
- data/lib/cogger/formatters/property.rb +1 -1
- data/lib/cogger/formatters/simple.rb +1 -1
- data/lib/cogger/hub.rb +21 -13
- data/lib/cogger/registry.rb +3 -3
- data.tar.gz.sig +0 -0
- metadata +1 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 394c25bd5359cd226784df811d32eca048dbef8aac78e886009259c3ceb5ab7c
|
|
4
|
+
data.tar.gz: 6f803583d161c300ac94ab8ca9b2d8187d17b2e389c23a9883cf3fe827cd5bbc
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cab259078b7c9e07de8091cbe94a1f890a704dda85dedda0201293b9e2c3d50c357ceafb6d1d6723aae56e1923088fc1be7ae81ae5304f13d6723c6ffb5a8420
|
|
7
|
+
data.tar.gz: 1ecb68b40b4daa2e56ed50b43f1952cdcb5b4d99ffc7b3990809be0e86321baffb7cc30119afef60bcc373c9df086fc71e035a9bbeba598d0feb864d98c620ce
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/README.adoc
CHANGED
|
@@ -239,18 +239,25 @@ Each instance can be mutated using the following messages:
|
|
|
239
239
|
----
|
|
240
240
|
logger = Cogger.new io: StringIO.new
|
|
241
241
|
|
|
242
|
-
logger.close
|
|
243
|
-
logger.reopen
|
|
244
|
-
logger.debug!
|
|
245
|
-
logger.info!
|
|
246
|
-
logger.warn!
|
|
247
|
-
logger.error!
|
|
248
|
-
logger.fatal!
|
|
249
|
-
logger.formatter =
|
|
250
|
-
logger.level = Logger::WARN
|
|
251
|
-
----
|
|
252
|
-
|
|
253
|
-
|
|
242
|
+
logger.close # nil
|
|
243
|
+
logger.reopen # Logger
|
|
244
|
+
logger.debug! # 0
|
|
245
|
+
logger.info! # 1
|
|
246
|
+
logger.warn! # 2
|
|
247
|
+
logger.error! # 3
|
|
248
|
+
logger.fatal! # 4
|
|
249
|
+
logger.formatter = :simple # :simple
|
|
250
|
+
logger.level = Logger::WARN # 2
|
|
251
|
+
----
|
|
252
|
+
|
|
253
|
+
When setting the formatter, you can use a string, symbol, or instance. For example, the following are identical:
|
|
254
|
+
|
|
255
|
+
[source,ruby]
|
|
256
|
+
----
|
|
257
|
+
logger.formatter = "simple"
|
|
258
|
+
logger.formatter = :simple
|
|
259
|
+
logger.formatter = Cogger::Formatters::Simple.new
|
|
260
|
+
----
|
|
254
261
|
|
|
255
262
|
=== Emojis
|
|
256
263
|
|
data/cogger.gemspec
CHANGED
data/lib/cogger/hub.rb
CHANGED
|
@@ -6,7 +6,6 @@ require "refinements/hash"
|
|
|
6
6
|
|
|
7
7
|
module Cogger
|
|
8
8
|
# Loads configuration and simultaneously sends messages to multiple streams.
|
|
9
|
-
# :reek:TooManyMethods
|
|
10
9
|
class Hub
|
|
11
10
|
extend Forwardable
|
|
12
11
|
|
|
@@ -27,23 +26,22 @@ module Cogger
|
|
|
27
26
|
fatal!
|
|
28
27
|
fatal?
|
|
29
28
|
formatter
|
|
30
|
-
formatter=
|
|
31
29
|
level
|
|
32
30
|
level=
|
|
33
31
|
] => :primary
|
|
34
32
|
|
|
35
33
|
delegate %i[id io tags mode age size suffix] => :configuration
|
|
36
34
|
|
|
37
|
-
def initialize
|
|
35
|
+
def initialize registry: Cogger, model: Configuration, **attributes
|
|
38
36
|
@registry = registry
|
|
39
|
-
@configuration = model[**
|
|
37
|
+
@configuration = model[**resolve_formatter(attributes)]
|
|
40
38
|
@primary = configuration.to_logger
|
|
41
39
|
@streams = [@primary]
|
|
42
40
|
end
|
|
43
41
|
|
|
44
42
|
def add_stream **attributes
|
|
45
43
|
attributes[:id] = configuration.id
|
|
46
|
-
streams.append configuration.with(**
|
|
44
|
+
streams.append configuration.with(**resolve_formatter(attributes)).to_logger
|
|
47
45
|
self
|
|
48
46
|
end
|
|
49
47
|
|
|
@@ -59,16 +57,20 @@ module Cogger
|
|
|
59
57
|
|
|
60
58
|
def any(message = nil, **, &) = log(__method__, message, **, &)
|
|
61
59
|
|
|
62
|
-
def abort
|
|
60
|
+
def abort message = nil, **payload, &block
|
|
63
61
|
error(message, **payload, &block) if message || !payload.empty? || block
|
|
64
62
|
exit false
|
|
65
63
|
end
|
|
66
64
|
|
|
67
|
-
def panic
|
|
65
|
+
def panic message = nil, **payload, &block
|
|
68
66
|
fatal(message, **payload, &block) if message || !payload.empty? || block
|
|
69
67
|
exit false
|
|
70
68
|
end
|
|
71
69
|
|
|
70
|
+
def formatter= value
|
|
71
|
+
primary.formatter = find_or_use_formatter value
|
|
72
|
+
end
|
|
73
|
+
|
|
72
74
|
def add(level, message = nil, **, &)
|
|
73
75
|
log(Logger::SEV_LABEL.fetch(level, "ANY").downcase, message, **, &)
|
|
74
76
|
end
|
|
@@ -85,13 +87,19 @@ module Cogger
|
|
|
85
87
|
|
|
86
88
|
attr_reader :registry, :configuration, :primary, :streams
|
|
87
89
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
next value unless value.is_a?(Symbol) || value.is_a?(String)
|
|
90
|
+
def resolve_formatter attributes
|
|
91
|
+
attributes.transform_value!(:formatter) { |value| find_or_use_formatter value }
|
|
92
|
+
end
|
|
92
93
|
|
|
93
|
-
|
|
94
|
-
|
|
94
|
+
def find_or_use_formatter value
|
|
95
|
+
case value
|
|
96
|
+
when String, Symbol
|
|
97
|
+
formatter, template = registry.get_formatter value
|
|
98
|
+
template ? formatter.new(template) : formatter.new
|
|
99
|
+
when Formatters::Abstract then value
|
|
100
|
+
else fail TypeError,
|
|
101
|
+
"Invalid formatter. Must be a string, symbol, or " \
|
|
102
|
+
"subclass of Cogger::Formatters::Abstract."
|
|
95
103
|
end
|
|
96
104
|
end
|
|
97
105
|
|
data/lib/cogger/registry.rb
CHANGED
|
@@ -39,14 +39,14 @@ module Cogger
|
|
|
39
39
|
"%<duration>s %<ip>s %<path>s %<length>s %<params>s"
|
|
40
40
|
end
|
|
41
41
|
|
|
42
|
-
def add_alias
|
|
42
|
+
def add_alias key, *styles
|
|
43
43
|
color.add_alias(key, *styles)
|
|
44
44
|
self
|
|
45
45
|
end
|
|
46
46
|
|
|
47
47
|
def aliases = color.aliases
|
|
48
48
|
|
|
49
|
-
def add_emojis
|
|
49
|
+
def add_emojis **attributes
|
|
50
50
|
emojis.merge! attributes.symbolize_keys!
|
|
51
51
|
self
|
|
52
52
|
end
|
|
@@ -57,7 +57,7 @@ module Cogger
|
|
|
57
57
|
|
|
58
58
|
def emojis = @emojis ||= {}
|
|
59
59
|
|
|
60
|
-
def add_filters
|
|
60
|
+
def add_filters *keys
|
|
61
61
|
filters.merge(keys.map(&:to_sym))
|
|
62
62
|
self
|
|
63
63
|
end
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
metadata.gz.sig
CHANGED
|
Binary file
|