39 lines
771 B
Go
39 lines
771 B
Go
package logger
|
|
|
|
import (
|
|
"log"
|
|
"os"
|
|
)
|
|
|
|
type Logger struct {
|
|
infoLogger *log.Logger
|
|
errorLogger *log.Logger
|
|
debugLogger *log.Logger
|
|
}
|
|
|
|
var instance *Logger
|
|
|
|
func init() {
|
|
instance = NewLogger()
|
|
}
|
|
|
|
func NewLogger() *Logger {
|
|
return &Logger{
|
|
infoLogger: log.New(os.Stdout, "INFO: ", log.Ldate|log.Ltime|log.Lshortfile),
|
|
errorLogger: log.New(os.Stderr, "ERROR: ", log.Ldate|log.Ltime|log.Lshortfile),
|
|
debugLogger: log.New(os.Stdout, "DEBUG: ", log.Ldate|log.Ltime|log.Lshortfile),
|
|
}
|
|
}
|
|
|
|
func Info(format string, v ...interface{}) {
|
|
instance.infoLogger.Printf(format, v...)
|
|
}
|
|
|
|
func Error(format string, v ...interface{}) {
|
|
instance.errorLogger.Printf(format, v...)
|
|
}
|
|
|
|
func Debug(format string, v ...interface{}) {
|
|
instance.debugLogger.Printf(format, v...)
|
|
}
|