inst-wide-logger 1.2.0 → 1.3.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 +10 -0
- data/README.md +9 -1
- data/lib/wide_logger/dev_formatter.rb +37 -0
- data/lib/wide_logger/version.rb +1 -1
- data/lib/wide_logger.rb +1 -1
- data/wide_logger.gemspec +1 -0
- metadata +17 -3
- data/lib/wide_logger/dev_json_formatter.rb +0 -15
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3b9f2740d229c6b5e3a628f349d8674654046c56c646ee505474699f14b9f8fd
|
|
4
|
+
data.tar.gz: b1ddd213ae2cf6b2b05da1a7855435a96294ca6879c8e2d10fc175a3edfd1a4d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0f39db58281e6f7b4ba6379fad20b0f75150a3d8f53f20adefff61256a91842a792ba6823290ec1dc833f7a4cf60e70d813a97ae9bfe1fcbfcf1c05b53d9dd1f
|
|
7
|
+
data.tar.gz: fbdd690779e28f2bb8bf89182739d4114130689e04905078d089394e8641ddf01d88a71407759da107374d31d5ab1919f833a7db17d371ebdd6fa4045da5907e
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.3.0] - 2026-04-20
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- `WideLogger::DevFormatter` with an `include_json:` constructor option (default `true`) to control whether the JSON context is appended to each log entry
|
|
8
|
+
|
|
9
|
+
### Deprecated
|
|
10
|
+
|
|
11
|
+
- `WideLogger::DevJsonFormatter` — use `WideLogger::DevFormatter` instead. The alias will be removed in 2.0.
|
|
12
|
+
|
|
3
13
|
## [1.2.0] - 2026-04-16
|
|
4
14
|
|
|
5
15
|
### Added
|
data/README.md
CHANGED
|
@@ -33,12 +33,20 @@ WideLogger.wrap(type: :web_request, metadata: { additional_context: @context })
|
|
|
33
33
|
end
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
Optionally, you can use WideLogger
|
|
36
|
+
Optionally, you can use `WideLogger::DevFormatter` to have log entries in the following format:
|
|
37
37
|
|
|
38
38
|
```text
|
|
39
39
|
<timestamp> <message> <context in JSON format>
|
|
40
40
|
```
|
|
41
41
|
|
|
42
|
+
The formatter accepts an `include_json:` keyword (default `true`). Set it to `false` to suppress the JSON context and emit only `<timestamp> <message>`:
|
|
43
|
+
|
|
44
|
+
```ruby
|
|
45
|
+
config.logging.formatter = WideLogger::DevFormatter.new(include_json: false)
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
> `WideLogger::DevJsonFormatter` is kept as a deprecated alias of `DevFormatter` for backwards compatibility and will be removed in 2.0.
|
|
49
|
+
|
|
42
50
|
## Development
|
|
43
51
|
|
|
44
52
|
After checking out the repo, run `bundle install` to install dependencies. Then, run `rake spec` to run the tests.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'active_support/deprecation'
|
|
4
|
+
|
|
5
|
+
module WideLogger
|
|
6
|
+
class DevFormatter < PaulBunyan::JSONFormatter
|
|
7
|
+
def initialize(include_json: true)
|
|
8
|
+
super()
|
|
9
|
+
@include_json = include_json
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def call(severity, time, progname, msg)
|
|
13
|
+
prefix = time.utc.strftime(DATETIME_FORMAT) + ' ' + msg.to_s
|
|
14
|
+
return prefix + "\n" unless @include_json
|
|
15
|
+
|
|
16
|
+
prefix + ' ' + super
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
private
|
|
20
|
+
|
|
21
|
+
def merge_metadata_and_message(metadata, message)
|
|
22
|
+
super.except('message', 'ts').sort_by { |key, _| key.to_s }.to_h
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
DEPRECATOR = ActiveSupport::Deprecation.new('2.0', 'WideLogger')
|
|
27
|
+
|
|
28
|
+
class DevJsonFormatter < DevFormatter
|
|
29
|
+
def initialize(*args, **kwargs)
|
|
30
|
+
DEPRECATOR.warn(
|
|
31
|
+
'WideLogger::DevJsonFormatter is deprecated and will be removed in 2.0. ' \
|
|
32
|
+
'Use WideLogger::DevFormatter instead.'
|
|
33
|
+
)
|
|
34
|
+
super
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
data/lib/wide_logger/version.rb
CHANGED
data/lib/wide_logger.rb
CHANGED
|
@@ -4,5 +4,5 @@ require 'paul_bunyan'
|
|
|
4
4
|
require_relative 'wide_logger/version'
|
|
5
5
|
require_relative 'wide_logger/wide_logger'
|
|
6
6
|
require_relative 'wide_logger/downgrading_to_debug_logger'
|
|
7
|
-
require_relative 'wide_logger/
|
|
7
|
+
require_relative 'wide_logger/dev_formatter'
|
|
8
8
|
require_relative 'wide_logger/railtie' if defined?(Rails::Railtie)
|
data/wide_logger.gemspec
CHANGED
|
@@ -26,6 +26,7 @@ Gem::Specification.new do |spec|
|
|
|
26
26
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
|
27
27
|
spec.require_paths = ['lib']
|
|
28
28
|
|
|
29
|
+
spec.add_dependency 'activesupport', '>= 6.0'
|
|
29
30
|
spec.add_dependency 'paul_bunyan', '~> 2.1'
|
|
30
31
|
spec.add_dependency 'railties', '>= 6.0'
|
|
31
32
|
end
|
metadata
CHANGED
|
@@ -1,15 +1,29 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: inst-wide-logger
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Zoltan Hegedus
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-04-
|
|
11
|
+
date: 2026-04-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: activesupport
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '6.0'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">="
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '6.0'
|
|
13
27
|
- !ruby/object:Gem::Dependency
|
|
14
28
|
name: paul_bunyan
|
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -53,7 +67,7 @@ files:
|
|
|
53
67
|
- Rakefile
|
|
54
68
|
- lib/inst-wide-logger.rb
|
|
55
69
|
- lib/wide_logger.rb
|
|
56
|
-
- lib/wide_logger/
|
|
70
|
+
- lib/wide_logger/dev_formatter.rb
|
|
57
71
|
- lib/wide_logger/downgrading_to_debug_logger.rb
|
|
58
72
|
- lib/wide_logger/railtie.rb
|
|
59
73
|
- lib/wide_logger/version.rb
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module WideLogger
|
|
4
|
-
class DevJsonFormatter < PaulBunyan::JSONFormatter
|
|
5
|
-
def call(severity, time, progname, msg)
|
|
6
|
-
time.utc.strftime(DATETIME_FORMAT) + ' ' + msg.to_s + ' ' + super
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
private
|
|
10
|
-
|
|
11
|
-
def merge_metadata_and_message(metadata, message)
|
|
12
|
-
super.except('message', 'ts').sort_by { |key, _| key.to_s }.to_h
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|