loglevel 0.4.0 → 0.4.1
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/lib/loglevel/classes.rb +1 -1
- data/lib/loglevel/help.rb +3 -6
- data/lib/loglevel/logger_analyzer.rb +40 -0
- data/lib/loglevel/version.rb +1 -1
- data/lib/loglevel.rb +5 -4
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9238768a01736d1fd62a8b68251194e02e0d6a54
|
4
|
+
data.tar.gz: e91ec147451f9139c91e46caabb29a13e4f4d670
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54ef918bd27faf39f28c0b32dc65f7df97e31ae54056636cb26794d5504b9342ac72e509c25fe06046d5ebff1acfd9e0a73a72e5a2b1b8746183de2b0cd0a097
|
7
|
+
data.tar.gz: 0a1f1ee68fda6d8a778098cabcc2e3237008870909a015680e83a2810a387c14a9ff10d58b78871b2cf3b52b4a4ba47620d67a7a47cc3d4032deb3ac511a239f
|
data/lib/loglevel/classes.rb
CHANGED
data/lib/loglevel/help.rb
CHANGED
@@ -3,7 +3,7 @@ class Loglevel
|
|
3
3
|
module Help
|
4
4
|
def help
|
5
5
|
logger.info <<-HELP.gsub(' ', '')
|
6
|
-
Usage:
|
6
|
+
Usage: LOGLEVEL=SETTING,SETTING,SETTING rails server
|
7
7
|
|
8
8
|
Available settings are as follows:
|
9
9
|
HELP Show these options
|
@@ -27,11 +27,8 @@ class Loglevel
|
|
27
27
|
|
28
28
|
def debug
|
29
29
|
debug = classes.map do |klass|
|
30
|
-
l =
|
31
|
-
|
32
|
-
f = d.filename || d.dev.inspect || 'nil'
|
33
|
-
v = l.level.is_a?(0.class) ? self.class::LOGLEVELS[l.level] : 'nil'
|
34
|
-
"#{klass}: logger=#{l.class}, device=#{f}, level=#{v}"
|
30
|
+
l = Loglevel::LoggerAnalyzer.new(klass)
|
31
|
+
"#{klass}: logger=#{l.logger_class}, device=#{l.device_name}, level=#{l.level_name}"
|
35
32
|
end
|
36
33
|
|
37
34
|
debug.join("\n")
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# Analyses the logger method of a class
|
2
|
+
class Loglevel
|
3
|
+
class LoggerAnalyzer
|
4
|
+
def level_name
|
5
|
+
@level_name ||= Loglevel::LOGLEVELS[level]
|
6
|
+
end
|
7
|
+
|
8
|
+
def level
|
9
|
+
@level ||= logger_level.is_a?(0.class) ? logger_level : 5
|
10
|
+
end
|
11
|
+
|
12
|
+
def logger_level
|
13
|
+
@logger_level ||= logger.level
|
14
|
+
end
|
15
|
+
|
16
|
+
def device_name
|
17
|
+
@device_name ||= logdev.filename || logdev.dev.inspect || 'nil'
|
18
|
+
end
|
19
|
+
|
20
|
+
def logdev
|
21
|
+
@logdev ||= logger.instance_variable_get('@logdev') || Struct.new(:filename, :dev).new
|
22
|
+
end
|
23
|
+
|
24
|
+
def logger_class
|
25
|
+
@logger_class ||= logger.class
|
26
|
+
end
|
27
|
+
|
28
|
+
def logger
|
29
|
+
@logger ||= klass.logger || Struct.new(:level).new(0)
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
attr_reader :klass
|
35
|
+
|
36
|
+
def initialize(klass)
|
37
|
+
@klass = klass
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
data/lib/loglevel/version.rb
CHANGED
data/lib/loglevel.rb
CHANGED
@@ -3,13 +3,14 @@ require 'loglevel/classes'
|
|
3
3
|
require 'loglevel/active_record'
|
4
4
|
require 'loglevel/http_logger'
|
5
5
|
require 'loglevel/help'
|
6
|
+
require 'loglevel/logger_analyzer'
|
6
7
|
|
7
8
|
class Loglevel
|
8
9
|
ENV_VAR_LEVEL = 'LOGLEVEL'.freeze
|
9
10
|
ENV_VAR_LOGGER = 'LOGLEVEL_LOGGER'.freeze
|
10
11
|
ENV_VAR_DEVICE = 'LOGLEVEL_DEVICE'.freeze
|
11
12
|
ENV_VAR_CLASSES = 'LOGLEVEL_CLASSES'.freeze
|
12
|
-
LOGLEVELS = %w
|
13
|
+
LOGLEVELS = %w[DEBUG INFO WARN ERROR FATAL UNKNOWN].freeze
|
13
14
|
|
14
15
|
class << self
|
15
16
|
def setup
|
@@ -81,8 +82,8 @@ class Loglevel
|
|
81
82
|
|
82
83
|
def logger_class
|
83
84
|
Object.const_get logger_class_name
|
84
|
-
rescue NameError
|
85
|
-
|
85
|
+
rescue NameError
|
86
|
+
raise Loglevel::Exception::BadLoggerClass, "Can't find logger class #{logger_class_name} - have you required it?"
|
86
87
|
end
|
87
88
|
|
88
89
|
def logger_class_name
|
@@ -94,7 +95,7 @@ class Loglevel
|
|
94
95
|
end
|
95
96
|
|
96
97
|
def device
|
97
|
-
%w
|
98
|
+
%w[STDOUT STDERR].include?(device_name) ? Object.const_get(device_name) : device_name
|
98
99
|
end
|
99
100
|
|
100
101
|
def device_name
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: loglevel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dominic Sayers
|
@@ -37,6 +37,7 @@ files:
|
|
37
37
|
- lib/loglevel/exception.rb
|
38
38
|
- lib/loglevel/help.rb
|
39
39
|
- lib/loglevel/http_logger.rb
|
40
|
+
- lib/loglevel/logger_analyzer.rb
|
40
41
|
- lib/loglevel/version.rb
|
41
42
|
- loglevel.gemspec
|
42
43
|
- script/console
|