bmc-daemon-lib 0.1.1 → 0.1.2
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/Gemfile.lock +1 -1
- data/bmc-daemon-lib.gemspec +1 -1
- data/lib/bmc-daemon-lib/logger_formatter.rb +31 -0
- data/lib/bmc-daemon-lib/logger_helper.rb +78 -0
- data/lib/bmc-daemon-lib.rb +2 -2
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ed9ad3dcff468f9985fead6dee82b410b31c102c
|
4
|
+
data.tar.gz: fc5db932cc62485666498ce1484c71ac777f42b6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6292fe5cd270d41d6b623382a54db753c7a8d06d0b0401915db31a1c546647b80eb75eebed309bea110f7c66a3649251e317647d6a90889b8a8b0be131ba4ca9
|
7
|
+
data.tar.gz: ceeb98c78d297955c0ad58dc27cb761067ce12fe49ebea611e3e5fd5bd8edd8d7a7ad6e63bfccd850615e38b0ee96754d681be96c1754a49bd53fa5b441cb077
|
data/Gemfile.lock
CHANGED
data/bmc-daemon-lib.gemspec
CHANGED
@@ -0,0 +1,31 @@
|
|
1
|
+
module BmcDaemonLib
|
2
|
+
class LoggerFormatter
|
3
|
+
|
4
|
+
def self.call severity, datetime, progname, payload
|
5
|
+
# Build common values
|
6
|
+
timestamp = datetime.strftime(LOG_HEADER_TIME)
|
7
|
+
|
8
|
+
# Build header
|
9
|
+
header = sprintf LOG_HEADER_FORMAT,
|
10
|
+
timestamp,
|
11
|
+
Process.pid,
|
12
|
+
severity,
|
13
|
+
progname
|
14
|
+
|
15
|
+
# If we have a bunch of lines, prefix them and send them together
|
16
|
+
return payload.map do |line|
|
17
|
+
"#{header}#{trimmed(line)}\n"
|
18
|
+
end.join if payload.is_a?(Array)
|
19
|
+
|
20
|
+
# Otherwise, just prefix the only line
|
21
|
+
return "#{header}#{trimmed(payload)}\n"
|
22
|
+
end
|
23
|
+
|
24
|
+
protected
|
25
|
+
|
26
|
+
def self.trimmed line
|
27
|
+
line.to_s.rstrip[0..LOG_MESSAGE_TRIM].force_encoding(Encoding::UTF_8)
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,78 @@
|
|
1
|
+
require "logger"
|
2
|
+
|
3
|
+
module BmcDaemonLib
|
4
|
+
module LoggerHelper
|
5
|
+
|
6
|
+
protected
|
7
|
+
|
8
|
+
def log_info message, details = nil
|
9
|
+
build_messages Logger::INFO, message, details
|
10
|
+
end
|
11
|
+
|
12
|
+
def log_error message, details = nil
|
13
|
+
build_messages Logger::ERROR, message, details
|
14
|
+
end
|
15
|
+
|
16
|
+
def log_debug message, details = nil
|
17
|
+
build_messages Logger::DEBUG, message, details
|
18
|
+
end
|
19
|
+
|
20
|
+
alias info log_info
|
21
|
+
alias error log_error
|
22
|
+
alias debug log_debug
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
# Builds prefix if LOG_PREFIX_FORMAT defined and caller has log_prefix method to provide values
|
27
|
+
def build_prefix
|
28
|
+
# Skip if no values from user class
|
29
|
+
return unless respond_to?(:log_prefix, true)
|
30
|
+
values = log_prefix
|
31
|
+
|
32
|
+
# Skip if no format defined
|
33
|
+
return unless defined?('LOG_PREFIX_FORMAT')
|
34
|
+
return unless LOG_PREFIX_FORMAT.is_a? String
|
35
|
+
|
36
|
+
# Build prefix string
|
37
|
+
LOG_PREFIX_FORMAT % values.map(&:to_s)
|
38
|
+
end
|
39
|
+
|
40
|
+
def build_messages severity, message, details = nil
|
41
|
+
messages = []
|
42
|
+
# messages << "/---------------------------------------"
|
43
|
+
# messages << "severity: #{severity}"
|
44
|
+
# messages << "message: #{message.class}"
|
45
|
+
# messages << "details: #{details.class} #{details.inspect}"
|
46
|
+
# messages << "ARRAY(#{details.count})" if details.is_a? Array
|
47
|
+
# messages << "HASH(#{details.count})" if details.is_a? Hash
|
48
|
+
|
49
|
+
prefix = build_prefix
|
50
|
+
|
51
|
+
# Add main message
|
52
|
+
messages << sprintf(LOG_MESSAGE_TEXT, prefix, message) if message
|
53
|
+
|
54
|
+
# Add details from array
|
55
|
+
details.each do |line|
|
56
|
+
messages << sprintf(LOG_MESSAGE_ARRAY, prefix, line)
|
57
|
+
end if details.is_a? Array
|
58
|
+
|
59
|
+
# Add details from hash
|
60
|
+
details.each do |key, value|
|
61
|
+
messages << sprintf(LOG_MESSAGE_HASH, prefix, key, value)
|
62
|
+
end if details.is_a? Hash
|
63
|
+
|
64
|
+
# Return all that stuff
|
65
|
+
# messages << "\\---------------------------------------"
|
66
|
+
logger.add severity, messages
|
67
|
+
end
|
68
|
+
|
69
|
+
# def debug_lines lines, prefix = ''
|
70
|
+
# if lines.is_a? Array
|
71
|
+
# logger.debug lines.map{ |line| sprintf(LOG_MESSAGE_ARRAY, prefix, line) }
|
72
|
+
# elsif lines.is_a? Hash
|
73
|
+
# logger.debug lines.map{ |key, value| sprintf(LOG_MESSAGE_HASH, prefix, key, value) }
|
74
|
+
# end
|
75
|
+
# end
|
76
|
+
|
77
|
+
end
|
78
|
+
end
|
data/lib/bmc-daemon-lib.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
+
require_relative "bmc-daemon-lib/conf"
|
1
2
|
require_relative "bmc-daemon-lib/logger_formatter"
|
2
3
|
require_relative "bmc-daemon-lib/logger_helper"
|
3
|
-
require_relative "bmc-daemon-lib/
|
4
|
-
require_relative "bmc-daemon-lib/worker_base"
|
4
|
+
# require_relative "bmc-daemon-lib/worker_base"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bmc-daemon-lib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bruno MEDICI
|
@@ -109,6 +109,8 @@ files:
|
|
109
109
|
- bmc-daemon-lib.gemspec
|
110
110
|
- lib/bmc-daemon-lib.rb
|
111
111
|
- lib/bmc-daemon-lib/conf.rb
|
112
|
+
- lib/bmc-daemon-lib/logger_formatter.rb
|
113
|
+
- lib/bmc-daemon-lib/logger_helper.rb
|
112
114
|
homepage: http://github.com/bmedici/bmc-daemon-lib
|
113
115
|
licenses:
|
114
116
|
- MIT
|