100 lines
2.3 KiB
Go
100 lines
2.3 KiB
Go
package logger
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"os"
|
|
)
|
|
|
|
var defaultLogger *Logger
|
|
|
|
func init() {
|
|
defaultLogger = New()
|
|
}
|
|
|
|
func Default() *Logger {
|
|
return defaultLogger
|
|
}
|
|
|
|
func SetDefault(l *Logger) {
|
|
defaultLogger = l
|
|
}
|
|
|
|
func Debug(format string, args ...interface{}) {
|
|
defaultLogger.log(DEBUG, format, args...)
|
|
}
|
|
|
|
func Info(format string, args ...interface{}) {
|
|
defaultLogger.log(INFO, format, args...)
|
|
}
|
|
|
|
func Warn(format string, args ...interface{}) {
|
|
defaultLogger.log(WARN, format, args...)
|
|
}
|
|
|
|
func Error(format string, args ...interface{}) {
|
|
defaultLogger.log(ERROR, format, args...)
|
|
}
|
|
|
|
func Fatal(format string, args ...interface{}) {
|
|
defaultLogger.log(FATAL, format, args...)
|
|
os.Exit(1)
|
|
}
|
|
|
|
func Panic(format string, args ...interface{}) {
|
|
defaultLogger.log(PANIC, format, args...)
|
|
panic(fmt.Sprintf(format, args...))
|
|
}
|
|
|
|
func DebugCtx(ctx context.Context, format string, args ...interface{}) {
|
|
defaultLogger.logCtx(DEBUG, ctx, format, args...)
|
|
}
|
|
|
|
func InfoCtx(ctx context.Context, format string, args ...interface{}) {
|
|
defaultLogger.logCtx(INFO, ctx, format, args...)
|
|
}
|
|
|
|
func WarnCtx(ctx context.Context, format string, args ...interface{}) {
|
|
defaultLogger.logCtx(WARN, ctx, format, args...)
|
|
}
|
|
|
|
func ErrorCtx(ctx context.Context, format string, args ...interface{}) {
|
|
defaultLogger.logCtx(ERROR, ctx, format, args...)
|
|
}
|
|
|
|
func FatalCtx(ctx context.Context, format string, args ...interface{}) {
|
|
defaultLogger.logCtx(FATAL, ctx, format, args...)
|
|
os.Exit(1)
|
|
}
|
|
|
|
func PanicCtx(ctx context.Context, format string, args ...interface{}) {
|
|
defaultLogger.logCtx(PANIC, ctx, format, args...)
|
|
panic(fmt.Sprintf(format, args...))
|
|
}
|
|
|
|
func DebugField(message string, keyValues ...interface{}) {
|
|
defaultLogger.logField(DEBUG, message, keyValues...)
|
|
}
|
|
|
|
func InfoField(message string, keyValues ...interface{}) {
|
|
defaultLogger.logField(INFO, message, keyValues...)
|
|
}
|
|
|
|
func WarnField(message string, keyValues ...interface{}) {
|
|
defaultLogger.logField(WARN, message, keyValues...)
|
|
}
|
|
|
|
func ErrorField(message string, keyValues ...interface{}) {
|
|
defaultLogger.logField(ERROR, message, keyValues...)
|
|
}
|
|
|
|
func FatalField(message string, keyValues ...interface{}) {
|
|
defaultLogger.logField(FATAL, message, keyValues...)
|
|
os.Exit(1)
|
|
}
|
|
|
|
func PanicField(message string, keyValues ...interface{}) {
|
|
defaultLogger.logField(PANIC, message, keyValues...)
|
|
panic(message)
|
|
}
|