bmc-daemon-lib 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|