loggerx 0.3.2 → 0.3.5

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 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
- }