loggerx 0.3.2 → 0.3.5

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
  SHA256:
3
- metadata.gz: b94fc11a31ed8efbf76e939a7765325fc226339bdea71edb61c026a16f2dad67
4
- data.tar.gz: 48b1a9cca11d4610bdfc1146d5a83076827e8be5b045e3d9c7501b39608734e9
3
+ metadata.gz: 29aa9e7ab752a0153a70eb61c1bc171f459a8bf617a8e38e7a949ea524aa2c56
4
+ data.tar.gz: 3e6acd787505a13975d7d81b21309808dc340302cfeae2cf07590ca55ee4dfaf
5
5
  SHA512:
6
- metadata.gz: 73b6239ea4cbc60897f3017a7ed10b56d2a1de0abbb9aa5a21ef58d5217a88dda7444253d7c4e6b472f96d6e5b3064e41addb76eeb6f3d3d669623373714cefa
7
- data.tar.gz: 73d856baf3ab5a92e6415bac098bba6915aaf6a789ea136c5d4a11e015cb0f5337baf70d3ce231903f11f8b1e8cbd4845c530f989c931d0afa0ea3f887c59775
6
+ metadata.gz: 4efaeecbfd9d0e01617362ddf5dfd734b7cdc4f213ac923e3537b67b2f2b879c6e82e7beef9f0bace475ea8964c201c693906032a104f2ba2adf91c801e75724
7
+ data.tar.gz: e930573db06a8d9a1524178322a57f173b4212c0f235a4a34dc9c84024853b788db22345a61e4ac3dea7b213e0e3b5dc149c203a8751d931fc335212d90d49e4
@@ -2,31 +2,37 @@
2
2
 
3
3
  module Loggerx
4
4
  class Loggerx
5
+ # Implementation omitted
5
6
  require 'logger'
6
7
  require 'fileutils'
7
8
  require 'stringio'
8
9
 
9
- LOG_FILENAME_BASE = "#{Time.now.strftime("%Y%m%d-%H%M%S")}.log".freeze
10
10
  @log_file = nil
11
11
  @log_stdout = nil
12
12
  @stdout_backup = $stdout
13
13
  @stringio = StringIO.new(+'', 'w+')
14
14
 
15
- attr_reader :error_count
15
+ @valid = false
16
16
 
17
- def initialize(prefix, fname, log_dir, stdout_flag, level = :info)
17
+ def ensure_quantum_log_files(log_dir_pn, limit_of_num_of_files, prefix)
18
+ list = log_dir_pn.children.select { |item| item.basename.to_s.match?("^#{prefix}") }.sort_by(&:mtime)
19
+ latest_index = list.size - limit_of_num_of_files
20
+ list[0, latest_index].map(&:unlink) if latest_index.positive?
21
+ end
22
+
23
+ def initialize(prefix, fname, log_dir, stdout_flag, level: :info)
18
24
  return if @log_file
19
25
 
20
- @error_access_count = 0
21
- @error_stderror_count = 0
22
- level_hs = {
26
+ @error_count = 0
27
+ @level_hs = {
23
28
  debug: Logger::DEBUG,
24
29
  info: Logger::INFO,
25
30
  warn: Logger::WARN,
26
31
  error: Logger::ERROR,
27
32
  fatal: Logger::FATAL,
28
- unknown: Logger::UNKNOWN,
33
+ unknown: Logger::UNKNOWN
29
34
  }
35
+ @log_level = @level_hs[level]
30
36
  @log_dir_pn = Pathname.new(log_dir)
31
37
 
32
38
  @limit_of_num_of_files ||= 5
@@ -37,72 +43,60 @@ module Loggerx
37
43
 
38
44
  fname = nil if fname == false
39
45
  fname = prefix + LOG_FILENAME_BASE if fname == :default
40
- @log_file = setup_logger_file(log_dir, fname) if fname
41
- # register_log_format(obj)
42
- # register_log_level(level_hs[level])
43
- level_hs[level]
44
- end
46
+ @log_file = setup_logger_file(@log_file, log_dir, fname) if fname
45
47
 
46
- def formatter
47
- @log_file&.formatter
48
- # @log_stdout&.formatter
49
- end
50
-
51
- def formatter=(obj)
52
- @log_file&.formatter = obj
53
- @log_stdout&.formatter = obj
54
- end
48
+ obj = proc do |_, _, _, msg|
49
+ "#{msg}\n"
50
+ end
51
+ register_log_format(obj)
52
+ register_log_level(@log_level)
55
53
 
56
- def logger_stdout
57
- @log_stdout
58
- end
54
+ @valid = true
59
55
 
60
- def ensure_quantum_log_files(log_dir_pn, limit_of_num_of_files, prefix)
61
- list = log_dir_pn.children.select { |item| item.basename.to_s.match?("^#{prefix}") }.sort_by(&:mtime)
62
- latest_index = list.size - limit_of_num_of_files
63
- list[0, latest_index].map(&:unlink) if latest_index.positive?
56
+ Loggerxcm.fatal('fatal')
57
+ Loggerxcm.debug('debug')
58
+ Loggerxcm.info('info')
59
+ Loggerxcm.warn('warn')
60
+ Loggerxcm.error('error')
61
+ # Loggerxcm.unknown("unknown")
64
62
  end
65
63
 
66
64
  def setup_logger_stdout(log_stdout)
67
65
  return log_stdout unless log_stdout.nil?
68
66
 
69
67
  begin
70
- log ||= ActiveSupport::TaggedLogging.new($stdout)
71
- rescue StandardError
72
- @error_stderror_count += 1
68
+ log_stdout = Logger.new($stdout)
69
+ rescue StandardError => exc
70
+ pust exc.message
71
+ @error_count += 1
73
72
  end
74
- log
73
+ log_stdout
75
74
  end
76
75
 
77
- def setup_logger_file(log_dir, fname)
76
+ def setup_logger_file(log_file, log_dir, fname)
78
77
  filepath = Pathname.new(log_dir).join(fname)
79
- begin
80
- log ||= ActiveSupport::TaggedLogging.new(filepath)
81
- rescue Errno::EACCES
82
- @error_access_count += 1
83
- rescue StandardError
84
- @error_stderror_count += 1
78
+ if log_file.nil?
79
+ begin
80
+ log_file = Logger.new(filepath.to_s)
81
+ rescue Errno::EACCES
82
+ @error_count += 1
83
+ rescue StandardError => exc
84
+ puts exc
85
+ @error_count += 1
86
+ end
85
87
  end
86
- log
87
- end
88
-
89
- def level
90
- @log_file&.level
91
- # @log_stdout&.level
92
- # Log4r互換インターフェイス
93
- # DEBUG < INFO < WARN < ERROR < FATAL < UNKNOWN
88
+ log_file
94
89
  end
95
90
 
96
- def level=(value)
97
- @log_file&.level = value
98
- @log_stdout&.level = value
99
- # Log4r互換インターフェイス
100
- # DEBUG < INFO < WARN < ERROR < FATAL < UNKNOWN
91
+ def register_log_format(obj)
92
+ @log_file&.formatter = obj
93
+ @log_stdout&.formatter = obj
101
94
  end
102
95
 
103
- def register_log_level(level)
104
- @log_file&.level = level
105
- @log_stdout&.level = level
96
+ def register_log_level(log_level)
97
+ @log_file.level = log_level
98
+ @log_stdout.level = log_level
99
+ #
106
100
  # Log4r互換インターフェイス
107
101
  # DEBUG < INFO < WARN < ERROR < FATAL < UNKNOWN
108
102
  end
@@ -112,10 +106,10 @@ module Loggerx
112
106
  @stdout_backup ||= $stdout
113
107
  @stringio ||= StringIO.new(+'', 'w+')
114
108
  $stdout = @stringio
115
- $stdout = @stdout_backup
116
109
  @stringio.rewind
117
110
  str = @stringio.read
118
111
  @stringio.truncate(0)
112
+ $stdout = @stdout_backup
119
113
  str
120
114
  else
121
115
  value
@@ -123,17 +117,27 @@ module Loggerx
123
117
  end
124
118
 
125
119
  def show(value)
126
- puts(value)
127
- str = error_sub(value)
128
- # puts(str) unless @log_stdout
129
- puts(str) # unless @log_stdout
120
+ if @valid
121
+ if value.instance_of?(Array)
122
+ value.map do |v|
123
+ str = v.to_s
124
+ Util.puts_valid_str(str)
125
+ end
126
+ else
127
+ Util.puts_valid_str(str)
128
+ end
129
+ str = error_sub(value)
130
+ Util.puts_valid_str(str)
131
+ end
130
132
  true
131
133
  end
132
134
 
133
135
  def error_sub(value)
134
136
  str = to_string(value)
135
- @log_file&.error(str)
136
- @log_stdout&.error(str)
137
+ if @valid
138
+ @log_file&.error(str)
139
+ @log_stdout&.error(str)
140
+ end
137
141
  str
138
142
  end
139
143
 
@@ -144,140 +148,50 @@ module Loggerx
144
148
 
145
149
  def debug(value)
146
150
  str = to_string(value)
147
- @log_file&.debug(str)
148
- @log_stdout&.debug(str)
151
+ if @valid
152
+ @log_file&.debug(str)
153
+ @log_stdout&.debug(str)
154
+ end
155
+
149
156
  true
150
157
  end
151
158
 
152
159
  def info(value)
153
160
  str = to_string(value)
154
- @log_file&.info(str)
155
- @log_stdout&.info(str)
161
+ if @valid
162
+ @log_file&.info(str)
163
+ @log_stdout&.info(str)
164
+ end
156
165
  true
157
166
  end
158
167
 
159
168
  def warn(value)
160
169
  str = to_string(value)
161
- @log_file&.warn(str)
162
- @log_stdout&.warn(str)
170
+ if @valid
171
+ @log_file&.warn(str)
172
+ @log_stdout&.warn(str)
173
+ end
163
174
  true
164
175
  end
165
176
 
166
177
  def fatal(value)
167
178
  str = to_string(value)
168
- @log_file&.fatal(str)
169
- @log_stdout&.fatal(str)
179
+ if @valid
180
+ @log_file&.fatal(str)
181
+ @log_stdout&.fatal(str)
182
+ end
170
183
  true
171
184
  end
172
185
 
173
186
  def close
174
- @log_file&.close
175
- # @log_stdout&.close
176
- end
177
-
178
- class << self
179
- def ensure_quantum_log_files(log_dir_pn, limit_of_num_of_files, prefix)
180
- @log_file.ensure_quantum_log_files(log_dir_pn, limit_of_num_of_files, prefix)
181
- end
182
-
183
- def hash_to_args(hash)
184
- prefix = hash['prefix']
185
- log_dir_pn = Pathname.new(hash['log_dir'])
186
-
187
- stdout_flag_str = hash['stdout_flag']
188
- stdout_flag = if stdout_flag_str.instance_of?(String)
189
- case stdout_flag_str
190
- when 'true'
191
- true
192
- else
193
- false
194
- end
195
- else
196
- stdout_flag_str
197
- end
198
-
199
- fname_str = hash['fname']
200
- fname = case fname_str
201
- when 'default'
202
- fname_str.to_sym
203
- when 'false'
204
- false
205
- else
206
- fname_str
207
- end
208
-
209
- level = hash['level'].to_sym
210
-
211
- [prefix, fname, log_dir_pn, stdout_flag, level]
212
- end
213
-
214
- def create_by_hash(hash)
215
- prefix, fname, log_dir_pn, stdout_flag, level = hash_to_args(hash)
216
- Loggerx.new(prefix, fname, log_dir_pn, stdout_flag, level)
217
- end
218
-
219
- def init_by_hash(hash)
220
- prefix, fname, log_dir_pn, stdout_flag, level = hash_to_args(hash)
221
- init(prefix, fname, log_dir_pn, stdout_flag, level)
222
- end
223
-
224
- def init(prefix, fname, log_dir, stdout_flag, level = :info)
225
- return if @log_file
226
-
227
- @log_file = new(prefix, fname, log_dir, stdout_flag, level)
228
- end
229
-
230
- def setup_logger_stdout(log_stdout)
231
- @log_file.setup_logger_stdout(log_stdout)
232
- end
233
-
234
- def setup_logger_file(log_dir, fname)
235
- @log_file.setup_logger_file(log_dir, fname)
236
- end
237
-
238
- def register_log_format(obj)
239
- @log_file.register_log_format(obj)
240
- end
187
+ retrun unless @valid
241
188
 
242
- def register_log_level(level)
243
- @log_file.register_log_level(level)
244
- end
245
-
246
- def to_string(value)
247
- @log_file.to_string(value)
248
- end
249
-
250
- def show(value)
251
- @log_file.show(value)
252
- end
253
-
254
- def error_sub(value)
255
- @log_file.error_sub(value)
256
- end
257
-
258
- def error(value)
259
- @log_file.error(value)
260
- end
261
-
262
- def debug(value)
263
- @log_file.debug(value)
264
- end
265
-
266
- def info(value)
267
- @log_file.info(value)
268
- end
269
-
270
- def warn(value)
271
- @log_file.warn(value)
272
- end
273
-
274
- def fatal(value)
275
- @log_file.fatal(value)
276
- end
189
+ @log_file&.close
190
+ @log_file = nil
191
+ @log_stdout = nil
277
192
 
278
- def close
279
- @log_file&.close
280
- end
193
+ @valid = false
194
+ # @log_stdout&.close
281
195
  end
282
196
  end
283
- end
197
+ end
@@ -23,15 +23,19 @@ module Loggerx
23
23
  require 'fileutils'
24
24
  require 'stringio'
25
25
 
26
- LOG_FILENAME_BASE = "#{Time.now.strftime('%Y%m%d-%H%M%S')}.log".freeze
26
+ # LOG_FILENAME_BASE = "#{Time.now.strftime('%Y%m%d-%H%M%S')}.log".freeze
27
27
  @log_file = nil
28
28
  @log_stdout = nil
29
29
  @stdout_backup = $stdout
30
- @stringio = StringIO.new(+"", 'w+')
30
+ @stringio = StringIO.new(+'', 'w+')
31
31
 
32
32
  @valid = false
33
33
 
34
34
  class << self
35
+ def valid?
36
+ @valid
37
+ end
38
+
35
39
  def ensure_quantum_log_files(log_dir_pn, limit_of_num_of_files, prefix)
36
40
  list = log_dir_pn.children.select { |item| item.basename.to_s.match?("^#{prefix}") }.sort_by(&:mtime)
37
41
  latest_index = list.size - limit_of_num_of_files
@@ -50,6 +54,7 @@ module Loggerx
50
54
  fatal: Logger::FATAL,
51
55
  unknown: Logger::UNKNOWN
52
56
  }
57
+ @log_level = level_hs[level]
53
58
  @log_dir_pn = Pathname.new(log_dir)
54
59
 
55
60
  @limit_of_num_of_files ||= 5
@@ -66,15 +71,15 @@ module Loggerx
66
71
  "#{msg}\n"
67
72
  end
68
73
  register_log_format(obj)
69
- register_log_level(level_hs[level])
74
+ register_log_level(@log_level)
70
75
 
71
76
  @valid = true
72
77
 
73
- Loggerxcm.fatal("fatal")
74
- Loggerxcm.debug("debug")
75
- Loggerxcm.info("info")
76
- Loggerxcm.warn("warn")
77
- Loggerxcm.error("error")
78
+ Loggerxcm.fatal('fatal')
79
+ Loggerxcm.debug('debug')
80
+ Loggerxcm.info('info')
81
+ Loggerxcm.warn('warn')
82
+ Loggerxcm.error('error')
78
83
  # Loggerxcm.unknown("unknown")
79
84
  end
80
85
 
@@ -110,10 +115,9 @@ module Loggerx
110
115
  @log_stdout&.formatter = obj
111
116
  end
112
117
 
113
- def register_log_level(level)
114
- puts "============ Loggerxcm.register_log_level level=#{level} ==========="
115
- @log_file&.level = level
116
- @log_stdout&.level = level
118
+ def register_log_level(log_level)
119
+ # @log_file&.level = log_level
120
+ # @log_stdout&.level = log_level
117
121
  #
118
122
  # Log4r互換インターフェイス
119
123
  # DEBUG < INFO < WARN < ERROR < FATAL < UNKNOWN
@@ -122,7 +126,7 @@ module Loggerx
122
126
  def to_string(value)
123
127
  if value.instance_of?(Array)
124
128
  @stdout_backup ||= $stdout
125
- @stringio ||= StringIO.new(+"", 'w+')
129
+ @stringio ||= StringIO.new(+'', 'w+')
126
130
  $stdout = @stringio
127
131
  @stringio.rewind
128
132
  str = @stringio.read
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Loggerx
4
- VERSION = '0.3.2'
4
+ VERSION = '0.3.5'
5
5
  end
data/lib/loggerx.rb CHANGED
@@ -8,4 +8,5 @@ module Loggerx
8
8
  class Error < StandardError; end
9
9
 
10
10
  # Your code goes here...
11
+ LOG_FILENAME_BASE = "#{Time.now.strftime('%Y%m%d-%H%M%S')}.log".freeze
11
12
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: loggerx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - ykominami
@@ -27,7 +27,6 @@ files:
27
27
  - Rakefile
28
28
  - SECURITY.md
29
29
  - lib/loggerx.rb
30
- - lib/loggerx/loggerx.code-workspace
31
30
  - lib/loggerx/loggerx.rb
32
31
  - lib/loggerx/loggerxcm.rb
33
32
  - lib/loggerx/version.rb
@@ -1,8 +0,0 @@
1
- {
2
- "folders": [
3
- {
4
- "path": "../.."
5
- }
6
- ],
7
- "settings": {}
8
- }