loglevel 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|