// Package logger wraps ripsaw-logger-golang calls. package logger import ( "fmt" ripsawlogger "gitlab-app.eng.qops.net/reporting-framework/ripsaw-logger-golang" ) type stdOutLogger struct{} const errorLogsPrefix string = "qmp-go" // Configure sets up the vendored ripsawlogger to write logs to the correct place. func Configure(logDir *string) { ripsawlogger.Configure([]ripsawlogger.Logger{ ripsawlogger.NewAsyncLogger(ripsawlogger.NewJSONLogger(ripsawlogger.JSONLoggerConfig{ Prefix: errorLogsPrefix, Directory: *logDir, })), }) } // Log writes in magenta to stderr, followed by a newline. It also // does an .Info in ripsawlogger. func Log(a ...interface{}) { v := fmt.Sprintf("%v", a) // v is [a[0] a[1] a[2]...]. Trim the '[' and ']' v = v[1 : len(v)-1] ripsawlogger.Info(v) return } // Warn writes in red to stderr, followed by a newline. It also // does a .Warn() in ripsawlogger. func Warn(a ...interface{}) { v := fmt.Sprintf("%v", a) v = v[1 : len(v)-1] ripsawlogger.Warn(v) return } // Debug writes in black to stderr, followed by a newline. It also // does an .Info in ripsawlogger. func Debug(a ...interface{}) { v := fmt.Sprintf("%v", a) v = v[1 : len(v)-1] ripsawlogger.Info(v) return }