41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
# File 'lib/yajl.rb', line 41
def self.create_logger(log_directory=nil)
log_directory ||= "~/logs"
user = `whoami`.chomp
hostname = `hostname`.chomp
`mkdir -p #{log_directory}`
project_name = project.split("/")[-1]
filename = File.expand_path("#{log_directory}/#{user}@#{hostname}.#{project_name}.log")
logger = YajlLogger.new(filename)
logger.level = Logger::INFO
logger.formatter = proc do |severity, datetime, progname, message|
id = SecureRandom.hex(16)
message = {text: message} if message.is_a? String
line = { id: id,
severity: severity,
datetime: datetime.utc,
progname: progname,
message: message }
JSON.generate(line) + "\n"
end
return logger
end
|