Add logger package with performance benchmarks
This commit is contained in:
99
logger/default.go
Normal file
99
logger/default.go
Normal file
@@ -0,0 +1,99 @@
|
||||
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)
|
||||
}
|
||||
Reference in New Issue
Block a user