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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 27d935b0bba808acac6f2dc481350410698cb44d
4
- data.tar.gz: 1434b05ae0a081a45df1dfb0b62f7f3d10ce0100
3
+ metadata.gz: 9238768a01736d1fd62a8b68251194e02e0d6a54
4
+ data.tar.gz: e91ec147451f9139c91e46caabb29a13e4f4d670
5
5
  SHA512:
6
- metadata.gz: 5000a19490bec0ecad39c9f1b9347b695118db51d077f5961b39a6425cc4da7c3053e9bc441335d446d3b162c9a74bab26b9e0f5a4f045e966167ddb378317db
7
- data.tar.gz: 3e84eb62bbfb745a499ccedf45eb5e2bb2e1b76861602f74433de3401b309db4dc76e30061e06da30535d07e8fcc38bcc7a60959cf88ece4de7d135f6ae2727a
6
+ metadata.gz: 54ef918bd27faf39f28c0b32dc65f7df97e31ae54056636cb26794d5504b9342ac72e509c25fe06046d5ebff1acfd9e0a73a72e5a2b1b8746183de2b0cd0a097
7
+ data.tar.gz: 0a1f1ee68fda6d8a778098cabcc2e3237008870909a015680e83a2810a387c14a9ff10d58b78871b2cf3b52b4a4ba47620d67a7a47cc3d4032deb3ac511a239f
@@ -19,7 +19,7 @@ class Loglevel
19
19
  end
20
20
 
21
21
  def class_names
22
- @class_names ||= passed_class_names | %w(Rails ActiveRecord::Base HttpLogger)
22
+ @class_names ||= passed_class_names | %w[Rails ActiveRecord::Base HttpLogger]
23
23
  end
24
24
 
25
25
  def passed_class_names
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: DEBUG=SETTING,SETTING,SETTING rails server
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 = klass.logger || Struct.new(:level).new(0)
31
- d = l.instance_variable_get('@logdev') || Struct.new(:filename, :dev).new
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Loglevel
4
- VERSION = '0.4.0'.freeze
4
+ VERSION = '0.4.1'.freeze
5
5
  end
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(DEBUG INFO WARN ERROR FATAL UNKNOWN).freeze
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 => e
85
- fail Loglevel::Exception::BadLoggerClass, "Can't find logger class #{logger_class_name} - have you required it?"
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(STDOUT STDERR).include?(device_name) ? Object.const_get(device_name) : device_name
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.0
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