14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
# File 'lib/kubernetes-deploy/formatted_logger.rb', line 14
def self.build(namespace = nil, context = nil, stream = $stderr, verbose_prefix: false)
l = new(stream)
l.level = level_from_env
middle = if verbose_prefix
if namespace.blank?
raise ArgumentError, 'Must pass a namespace if logging verbosely'
end
if context.blank?
raise ArgumentError, 'Must pass a context if logging verbosely'
end
"[#{context}][#{namespace}]"
end
l.formatter = proc do |severity, datetime, _progname, msg|
colorized_line = ColorizedString.new("[#{severity}][#{datetime}]#{middle}\t#{msg}\n")
case severity
when "FATAL"
ColorizedString.new("[#{severity}][#{datetime}]#{middle}\t").red + "#{msg}\n"
when "ERROR"
colorized_line.red
when "WARN"
colorized_line.yellow
else
colorized_line
end
end
l
end
|