flnews_post_proc 1.47 → 1.48
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/bin/flnews_post_proc +0 -1
- data/lib/basic_logging.rb +19 -5
- data/lib/configuration.rb +5 -2
- data/lib/version.rb +3 -2
- metadata +4 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9a019c52dac602a5b00c71131e8b44a61769604a08035b7afad305a27c5d43a0
|
|
4
|
+
data.tar.gz: 7f5a69f62df2a18fefe9f0f5f499d7960d40b751b4bda67f26a88f91034ac941
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fe1d5fee2fffc214f8aa96b34e4886b3c2e7b16a71dd2ac99b8df214528d53c43df8b425fe4b21d4edf58e691e6cd5f497e09ed12a81129dd0f0e883fcf9ab76
|
|
7
|
+
data.tar.gz: 40f0b45424e01cc6b034aeeb4a7729bb0a499e231eb0001a60d762e4f1952964090dacda102fb87215ed66786e7e2887c471c95cc930018b469df669d16915b1
|
data/bin/flnews_post_proc
CHANGED
data/lib/basic_logging.rb
CHANGED
|
@@ -66,12 +66,12 @@ module BasicLogging
|
|
|
66
66
|
|
|
67
67
|
# set the log target
|
|
68
68
|
def set_target(tg)
|
|
69
|
-
if
|
|
70
|
-
@@target = nil
|
|
71
|
-
elsif tg.respond_to?(:to_io)
|
|
69
|
+
if tg.respond_to?(:to_io)
|
|
72
70
|
@@target = tg
|
|
73
71
|
elsif(!File::exist?(tg) || ( File.file?(tg) && File.writable?(tg) ) )
|
|
74
72
|
@@target = File.open(tg, 'w+')
|
|
73
|
+
elsif !tg || tg.respond_to?(:to_str) && tg.strip.empty?
|
|
74
|
+
@@target = nil
|
|
75
75
|
else
|
|
76
76
|
STDERR.puts __FILE__.dup << ': ERROR : target ' << tg << ' cannot be set'
|
|
77
77
|
STDERR.puts "Keeping old target " << @@target.inspect
|
|
@@ -106,7 +106,7 @@ module BasicLogging
|
|
|
106
106
|
# Clear the log (-file)
|
|
107
107
|
def clear_log
|
|
108
108
|
if @@target && @@target.respond_to?(:truncate)
|
|
109
|
-
@@target.truncate(0)
|
|
109
|
+
lock_target{ @@target.truncate(0) }
|
|
110
110
|
end
|
|
111
111
|
end
|
|
112
112
|
|
|
@@ -119,12 +119,26 @@ module BasicLogging
|
|
|
119
119
|
|
|
120
120
|
private
|
|
121
121
|
|
|
122
|
+
def lock_target(&block)
|
|
123
|
+
begin
|
|
124
|
+
if @@target.respond_to?(:flock)
|
|
125
|
+
@@target.flock(File::LOCK_EX)
|
|
126
|
+
block.call
|
|
127
|
+
@@target.flock(File::LOCK_UN)
|
|
128
|
+
elsif @@target.respond_to?(:to_io)
|
|
129
|
+
block.call
|
|
130
|
+
end
|
|
131
|
+
rescue => ex
|
|
132
|
+
STDERR.puts __FILE__.dup << ": ERROR : cannot lock target (" << ex.message << ")"
|
|
133
|
+
end
|
|
134
|
+
end
|
|
135
|
+
|
|
122
136
|
# 1 format_log for all loggers.
|
|
123
137
|
def format_log(message, mlevel)
|
|
124
138
|
if @@target
|
|
125
139
|
# indicate if a registered class or the registered object of a class is calling.
|
|
126
140
|
name = self.class == Class ? self.name.dup << ' [class]' : self.class.name
|
|
127
|
-
@@target.puts '' << name << ' ' << mlevel.to_s << ' ' << Time.now.strftime("%H:%M:%S:%6N") << ': ' << message.gsub("\n", "\n |")
|
|
141
|
+
lock_target{@@target.puts '' << name << ' ' << mlevel.to_s << ' ' << Time.now.strftime("%H:%M:%S:%6N") << ': ' << message.gsub("\n", "\n |")}
|
|
128
142
|
end
|
|
129
143
|
end
|
|
130
144
|
end
|
data/lib/configuration.rb
CHANGED
|
@@ -119,8 +119,11 @@ class Configuration
|
|
|
119
119
|
@keys = @conf.keys
|
|
120
120
|
clevel = @conf[:LOG_LEVEL]
|
|
121
121
|
set_level clevel
|
|
122
|
-
|
|
123
|
-
|
|
122
|
+
target_string = @conf[:DEBUG_LOG]
|
|
123
|
+
set_target (target_string == 'STDOUT' ? STDOUT : target_string)
|
|
124
|
+
# clear the log file.
|
|
125
|
+
clear_log
|
|
126
|
+
debug('log target and -level set: ' << @@log_level.to_s << ', ' << target_string)
|
|
124
127
|
rescue Exception => ex
|
|
125
128
|
msg = ex.message
|
|
126
129
|
error msg
|
data/lib/version.rb
CHANGED
|
@@ -14,8 +14,9 @@
|
|
|
14
14
|
=end
|
|
15
15
|
|
|
16
16
|
PROGNAME = 'flnews_post_proc'
|
|
17
|
-
PROGVERSION = "1.
|
|
17
|
+
PROGVERSION = "1.48"
|
|
18
18
|
AUTHORS = "Michael Uplawski"
|
|
19
19
|
EMAIL = "michael.uplawski@uplawski.eu"
|
|
20
20
|
YEARS = "2023 - 2024"
|
|
21
|
-
SUMMARY = "
|
|
21
|
+
SUMMARY = "\tConcurrent access to the log file\n\tLog cleared upon setting log target"
|
|
22
|
+
SUMMARY << "\n\t\"STDOUT\" allowed as log target"
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: flnews_post_proc
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: '1.
|
|
4
|
+
version: '1.48'
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Michael Uplawski
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-05-
|
|
11
|
+
date: 2024-05-30 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: diffy
|
|
@@ -85,5 +85,6 @@ requirements: []
|
|
|
85
85
|
rubygems_version: 3.5.3
|
|
86
86
|
signing_key:
|
|
87
87
|
specification_version: 4
|
|
88
|
-
summary:
|
|
88
|
+
summary: Concurrent access to the log file Log cleared upon setting log target "STDOUT"
|
|
89
|
+
allowed as log target
|
|
89
90
|
test_files: []
|