lenjador 2.3.0 → 2.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/.github/CODEOWNERS +1 -0
- data/Gemfile.lock +1 -1
- data/README.md +9 -4
- data/lenjador.gemspec +1 -1
- data/lib/lenjador/adapters/stdout_adapter.rb +29 -1
- data/lib/lenjador/adapters.rb +7 -9
- data/lib/lenjador.rb +1 -2
- data/spec/lenjador_spec.rb +8 -6
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0ca7865be50f57c1ff8cbd3e066a4d6d1438672d40a0059b97878268cc933f57
|
|
4
|
+
data.tar.gz: fb6ead5f4ad420b02e1a601758ae1e80489d3a7de14e6d83a7ce3aeac92c20a8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f4d9a98f173c040e9c8cd1483eb2df95d089af6ff680420ab782bda9d96cec437f72f33386f18beee67e4c2daf471da32bbcf9c4c761bd52e58d9d5b6a74cda0
|
|
7
|
+
data.tar.gz: 590ba92525bbc202c5a02feccee5a8ab9880347c6d2ee62920d4d5c8413264d5f5bac6dc8a28626727ecfde23a50baa0efeb07b5f94d326c29731b3e2c46772a
|
data/.github/CODEOWNERS
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
* @salemove/tm-atlas
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
|
@@ -13,10 +13,11 @@ Lenjador.build(application_name, logger_config)
|
|
|
13
13
|
|
|
14
14
|
#### Configuration
|
|
15
15
|
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
```yaml
|
|
17
|
+
logger:
|
|
18
|
+
level: debug
|
|
19
|
+
json: false
|
|
20
|
+
colour: true
|
|
20
21
|
```
|
|
21
22
|
Supported log levels:
|
|
22
23
|
|
|
@@ -28,6 +29,10 @@ Supported log levels:
|
|
|
28
29
|
|
|
29
30
|
For example level: 'warn' will log everything with warn and above.
|
|
30
31
|
|
|
32
|
+
Set `json: true` to output logs in JSON format. Defaults to `false`.
|
|
33
|
+
|
|
34
|
+
Set `colour: true` to colour logs based on level. Works only when `json: false`. Defaults to `false`.
|
|
35
|
+
|
|
31
36
|
#### Examples
|
|
32
37
|
|
|
33
38
|
Creating a new stdout logger
|
data/lenjador.gemspec
CHANGED
|
@@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
|
5
5
|
|
|
6
6
|
Gem::Specification.new do |gem|
|
|
7
7
|
gem.name = 'lenjador'
|
|
8
|
-
gem.version = '2.
|
|
8
|
+
gem.version = '2.4.0'
|
|
9
9
|
gem.authors = ['Salemove']
|
|
10
10
|
gem.email = ['support@salemove.com']
|
|
11
11
|
gem.description = "It's lenjadoric"
|
|
@@ -5,10 +5,18 @@ require 'forwardable'
|
|
|
5
5
|
class Lenjador
|
|
6
6
|
module Adapters
|
|
7
7
|
class StdoutAdapter
|
|
8
|
+
module Colour
|
|
9
|
+
RESET = "\u001B[0m"
|
|
10
|
+
YELLOW = "\u001B[33m"
|
|
11
|
+
CYAN = "\u001B[36m"
|
|
12
|
+
RED = "\u001B[31m"
|
|
13
|
+
end
|
|
14
|
+
|
|
8
15
|
attr_reader :logger
|
|
9
16
|
|
|
10
|
-
def initialize(_service_name)
|
|
17
|
+
def initialize(_service_name, colour: false)
|
|
11
18
|
@logger = Logger.new($stdout)
|
|
19
|
+
@colour = colour
|
|
12
20
|
end
|
|
13
21
|
|
|
14
22
|
def log(level, metadata = {})
|
|
@@ -19,8 +27,28 @@ class Lenjador
|
|
|
19
27
|
data.empty? ? nil : Utils.generate_json(data)
|
|
20
28
|
].compact.join(' ')
|
|
21
29
|
|
|
30
|
+
log_data = colour_text(level, log_data) if @colour
|
|
31
|
+
|
|
22
32
|
@logger.add(level, log_data)
|
|
23
33
|
end
|
|
34
|
+
|
|
35
|
+
private
|
|
36
|
+
|
|
37
|
+
def colour_text(level, text)
|
|
38
|
+
colour =
|
|
39
|
+
case level
|
|
40
|
+
when Severity::DEBUG
|
|
41
|
+
Colour::CYAN
|
|
42
|
+
when Severity::WARN
|
|
43
|
+
Colour::YELLOW
|
|
44
|
+
when Severity::ERROR, Severity::FATAL
|
|
45
|
+
Colour::RED
|
|
46
|
+
else
|
|
47
|
+
''
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
"#{colour}#{text}#{Colour::RESET}"
|
|
51
|
+
end
|
|
24
52
|
end
|
|
25
53
|
end
|
|
26
54
|
end
|
data/lib/lenjador/adapters.rb
CHANGED
|
@@ -3,15 +3,13 @@
|
|
|
3
3
|
class Lenjador
|
|
4
4
|
module Adapters
|
|
5
5
|
def self.get(service_name, config)
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
end
|
|
14
|
-
adapter.new(service_name)
|
|
6
|
+
if config.fetch(:json, false)
|
|
7
|
+
require_relative 'adapters/stdout_json_adapter'
|
|
8
|
+
StdoutJsonAdapter.new(service_name)
|
|
9
|
+
else
|
|
10
|
+
require_relative 'adapters/stdout_adapter'
|
|
11
|
+
StdoutAdapter.new(service_name, colour: config.fetch(:colour, false))
|
|
12
|
+
end
|
|
15
13
|
end
|
|
16
14
|
end
|
|
17
15
|
end
|
data/lib/lenjador.rb
CHANGED
data/spec/lenjador_spec.rb
CHANGED
|
@@ -42,12 +42,14 @@ describe Lenjador do
|
|
|
42
42
|
let(:lenjador) { described_class.new(adapter, Lenjador::Severity::INFO, []) }
|
|
43
43
|
|
|
44
44
|
it 'logs with severity' do
|
|
45
|
-
expect(adapter).to receive(:log).with(
|
|
46
|
-
expect(adapter).to receive(:log).with(
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
lenjador.add(
|
|
50
|
-
lenjador.add(
|
|
45
|
+
expect(adapter).to receive(:log).with(Logger::INFO, message: 'info-msg').ordered
|
|
46
|
+
expect(adapter).to receive(:log).with(Logger::WARN, message: 'warn-msg').ordered
|
|
47
|
+
expect(adapter).to receive(:log).with(Logger::UNKNOWN, message: 'unknown-msg').ordered
|
|
48
|
+
|
|
49
|
+
lenjador.add(Logger::DEBUG, 'debug-msg')
|
|
50
|
+
lenjador.add(Logger::INFO, 'info-msg')
|
|
51
|
+
lenjador.add(Logger::WARN, 'warn-msg')
|
|
52
|
+
lenjador.add(Logger::UNKNOWN, 'unknown-msg')
|
|
51
53
|
end
|
|
52
54
|
end
|
|
53
55
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lenjador
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Salemove
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2025-11-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: lru_redux
|
|
@@ -157,6 +157,7 @@ executables: []
|
|
|
157
157
|
extensions: []
|
|
158
158
|
extra_rdoc_files: []
|
|
159
159
|
files:
|
|
160
|
+
- ".github/CODEOWNERS"
|
|
160
161
|
- ".github/workflows/ci.yml"
|
|
161
162
|
- ".github/workflows/publish.yml"
|
|
162
163
|
- ".gitignore"
|